session验证与jwt验证

简单谈谈session验证和jwt验证

session验证简化版原理

1.用户rds登录login页面,服务器向用户端发送一个sessionid,
同时服务器创建一个和这个sessionid相关的会话信息(用于该用户下次session验证)
2.用户再次登录或者访问授权页面,将sessionid发送到服务器
3.服务器通过保留的会话信息去验证用户传过来的sessionid
4.验证通过,服务器放行授权页面

jwt验证简化版原理

流程如下:

1.用户rds首次通过login页面登录网站
2.网站后端服务器把 userid+秘钥 通过某种加密算法 加密成一个密文字符串
秘钥是服务器所独有的,仅存在于服务器端。
此加密算法不可逆(短时间无法通过密文算出明文,可能要几百年才能算出,就视为不可逆)
3.`userid`+`密文字符串`叫`jwt_token`,服务器将jwt_token传到用户。
用户端保存jwt_token
4.用户访问授权页面,将jwt_token传到服务器端,服务器将userid拿出来,用加密算法算出一个密文2,
如果密文2和密文字符串1可以匹配,说明是rds这个用户,放行授权页面.

相比于session验证,jwt验证的优点

1.解决跨域访问问题
2.jwt支持多服务器端,因为本身不在服务器端存信息,只将jwttoken存在用户端
等等
posted @ 2024-02-24 14:38  r涤生  阅读(23)  评论(0编辑  收藏  举报