| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> cookie,session,token区别 -> 正文阅读 |
|
[系统运维]cookie,session,token区别 |
cookie,session,token区别前提:用户登陆一次以后下次不会再输入密码,核心的概念就是存储 cookie流程浏览器发起http请求,服务器会进行cookie设置,服务器会进行cookie设置,也就是set-cookie,服务器会把cookie中的名和值属性里面的内容填充完整,cookie发给浏览器以后,浏览器会保存起来,整浏览器以后每一次发起请求都会自动附上这个cookie,存储在浏览器中的数据, session流程session一般都保存在数据库里,用户登录后有用户名和密码经过比对后,成功登录以后,会返回sessionid和max-age(会话结束时间),然后把这两个东西传回到浏览器,这里就用到了cookie,设置cookie,并且把sessionid加入到cookie中,再把会话结束时间对应设置成为这个cookie的有效期,浏览器拿到cookie后进行保存,注意,这个时候cookie中是没有用户名和密码的,只有seesionid也是没有规律的字符串,服务器在发送cookie之前会对这个含有seesionid的cookie进行签名,换句话说,如果黑客修改了seesionid,那么sessionid就会变成服务器识别不了的字符串也就是说,其实sessionid也是利用了cookie的特点作为媒介,来进行对用户名称以及密码进行保存的, 随着互联网的发展,用户群体变得越来越大,如果服务器一直坚持使用cookie,那么服务器就会面临大量的sessionid保存在服务器里面,现在就出现了一种技术叫做jwt jwt流程用户第一次登陆以后,服务器会生成一个jwt,服务器不需要保存这个jwt,只需要保存jwt签名的密文,接着把jwt发给浏览器,可以让浏览器以cookie或者storage的形式存储,假设以cookie的形式保存下来,这样用户每次发送请求都会把这个jwt发给服务器,和session很类似,只不过token存储在用户那边 JWT(json web token)认证机制1.了解session认证的局限性session认证需要配合cookie才能实现,但由于cookie不支持跨域访问,所以当涉及到前端跨域请求后端接口的时候,需要做很多额外的配置 注意:
工作原理将用户的信息通过token字符串的形式,保存在客户端浏览器中,服务端通过还原token字符串的形式来认证用户的身份 jwt中保存在客户端,session保存在服务端 jwt组成部分:头部,有效荷载,签名 HEADER.Payload.Signture 使用英文的“ . ”分隔 其中payload才是真正的用户信息,剩下两个是安全性相关的部分,为了保证token的安全性 使用方式:浏览器客户端收到jwt后,通常会存储在localstroage或者sessionstorage中 此后,客户端每次与服务器通信,都要带上这个jwt的字符串,从而进行身份认证,推荐的做法是把jwt放在http请求头中的authorization中
参考:https://www.bilibili.com/video/BV1ob4y1Y7Ep?spm_id_from=333.337.search-card.all.click |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 14:27:43- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |