详谈企业级session、Token登入实现方式
众所周知,http请求是无状态的,每次发送请求的时候,对方都不知道你是谁。
实际需求中,我们登入系统后,需要系统记住是谁登入了,方便系统的权限管理,保证系统的安全性。
一、Session登入
Session是一块保存在服务器端的内存空间,一般用于保存用户的会话信息!
实现方式:\color{red} {实现方式:}实现方式:
- 1、用户输入用户名密码点击登入按钮,服务端创建session,把用户信息存入session中。
- 2、服务端自动返回给浏览器一个sessionID,存入浏览器的cookie中。
下次用户再来访问的话会带着这个cookie中的sessionID,服务器通过sessionID去寻找对应的session,如果session中已经有了这个用户的登陆信息,则说明用户已经登陆过了。 - 3、登入成功后的每次请求,都会带着sessionID到服务端,服务的判断session中的用户信息是否为空,如果不为空,则已登入。
session作为登入的弊处:\color{red} {session作为登入的弊处:}session作为登入的弊处:
- 1、服务器压力大,通常Session是存储在内存中的,每个用户通过认证之后都会将session数据保存在服务器的内存中,而当用户量增大时,服务器的压力增大。
- 2、重启服务,session清空,需要重新登入。
- 3、Session共享:现在很多应用都是分布式集群,需要我们做额外的操作进行Session共享。
虽然session登入有弊处,但是一些小的项目,仍然用session作为登入的首选
二、Token实现登入
Token是现在最常用的方式。
实现方式:\color{red} {实现方式:}实现方式:
1、用户发出登录请求,带着用户名和密码到服务器进行验证,服务器验证成功就在后台生成一个token返回给客户端。Token就是一个加密后的字符串。
2、客户端将token存储到cookie中,服务端将token存储到redis中,可以设置存储token的有效期。
3、后续客户端的每次请求资源都必须携带token,服务端接收到请求首先校验是否携带token,以及token是否和redis中的匹配,若不存在或不匹配直接拦截返回错误信息(如未认证)。
参考原文链接:https://www.cnblogs.com/54chensongxia/archive/2020/08/12/13491214.html 原文中有关于JWT的认证用法。JWT和Token本质区别并不大。
详谈企业级session、Token登入实现方式相关推荐
- 手机token登入软件_小程序中基于token的登录流程
官方文档小程序登录流程的介绍 api-login.jpg 即先发起wx.login请求,得到code后经第三方服务器想微信服务器发送请求获取openid,assessToken等敏感信息,这里我们需要 ...
- 手机token登入软件_app开发调试工具_app开发token使用
APP制作软件有哪些? 国外的制作工具 Appmakr 国内制作App的工具网站 AppCan 可以再搜搜里面去问下 网上都有,自己看 软件制作APP?什么意思?提的有点不清不楚的.难道是说可以 ...
- Redis实现短信登入功能(一)传统的Session登入
基于Session实现登入流程 分步实现发送短信登入 (1)发送短信验证码 (2)短信验证码的登入 (3)登入校验 集群Session共享问题(Redis登入的提出) 基于Session实现登入流程 ...
- SSO单点登入原理及简单实现
文章目录 什么是单点登入 为什么使用单点登入 单点登入的实现 原理 问题解释 什么是单点登入 SSO(Single Sign On):单点登录是实现多个系统之间统一登录的验证系统,简单来说就是:有A, ...
- php网站 qq登陆,PHP QQ一键登入网站实现过程
qq一键登入功能对于大多数小中型网站来说是十分必要的,因为他给你的用户带来了极大的方便,但是想要集成网站的qq一键登入功能,你必须要一些编程基础,使网站和qq登入的应用之间进行一些必要的交互,下面我简 ...
- 权限组件之录入获取登入用户的所有权限
1.urls.py 2.views.py get请求 3.login.html 页面 post请求 4.用户名或密码错误重新登入 验证用户名密码 登入成功之后做什么呢??? session 5.登入成 ...
- Telent远程登入实验
前言 Telent----远程登入 Telent---TCP可达 模拟远程登入网络环境. 1.需求---配置IP地址 2.配置R2的远程登入 采用方式:接口password验证方式,口令为:gugu ...
- SSO方式实现微服务的登入业务
1.登录业务介绍: 单一服务器模式 单一服务器模式用于登录的方式通常是使用session. 1.微服务 在分布式中通常使用单点登入(SSO(single sign on)模式)的方式实现用户登入,三种 ...
- sql server 更改端口之后的登入方式
sql server 更改端口之后的登入方式, ip地址 + 逗号"," +端口号 如: 127.0.0.1,3389 转载于:https://www.cnblogs.com/he ...
最新文章
- 如何检查密钥库文件中的证书名称和别名?
- 关于CS架构文件传输流的问题,文中代码都是转自网上,但可保证代码无无误...
- Linux配置静态IP地址
- 贪吃蛇游戏(附源码)
- 谷歌、雅虎支持中文域名搜索 有助提升SEO
- win10系统进入监护人模式的方法
- Jetty 和tomcat 比较研究初探
- 公司内网环境下部署流量监控服务器的初步方案
- pgAdmin 3 编译安装
- android的绝对布局,Android布局之绝对布局AbsoluteLayout详解
- 一个简单的Appium测试(Python语言)
- Slove the {Failed to load unit 'HGCM' (VERR_INVALID_PARAMETER)}
- abaqus个人总结 各种问题各种debug
- USB连接默认更改为传输文件
- 失落世界服务器国庆宝箱位置,烟雨江湖国庆宝箱在哪里 烟雨江湖中秋宝箱位置坐标大全...
- 设置单选框只能选择一个
- NC65发布webservice接口开发环境启动服务找不到接口
- ORACLE (5): buffer cache(CBC LATCH实验)
- 76个常识,你知几个
- IP网络农村应急广播系统方案