1、session(赛神)会话机制
- session 会话机制会借助 cookie + session 一起来做认证
- cookie 是放在浏览器中的,cookie 是存储在客服端,但是可以由服务端和客户端生成。
- sesion 是保存在服务端的数据库中的,session 是服务端一块存储空间,只能由服务端生成。
- session 是把 session id 也就是session 的 key 值,保存到 cookie 当中
- 这个 key 值 一般在访问其他页面的时候会放到 cookie 当中,向后端发起请求
- 当用户输入账号和密码登录后,服务端会返回用户的session id 把他放在cookie中这就是session机制认证
2、token(套肯)安全令牌机制
- token 不依赖服务器资源
- token 服务端生成的
- 往往会将 token 放在浏览器中,请求头中
- 当用户输入账号和密码后,后端将他的安全令牌作为相应数据返回给我,那就是 token 令牌机制
- 当用户输入账号和密码后,会返回一个 token ,绝大多数情况下会 通过前端的工程师放到请求头当中,然后再去发起请求
- 用的最多的是 jwt token 机制
- 浏览器接收到响应报文之后,会将 token 放在 local storage (本地存储空间)/ session storage
3、鉴权
是指验证用户是否拥有访问系统的权利---鉴定权限
4、为什么会有cookie、session、和token?
- http是无状态协议
- cookie 缓存
- 大部分存在浏览器中,是客户端的缓存
- 主要是 name 和 value 的存储
- session 会话
- 存储在服务器当中
- 是浏览器 和 服务器 之间的验证
5、cookie 和 session 区别
- cookie:客户端和服务端都能 cookie,存放在客户端。存放一些不敏感的数据,数据类型只能是字符串
- session:服务端生成 的 session , 存放在服务端,可以存放任意数据,Java 中 session 中可以存放任意对象,session 必须依赖 cookie 实现
6、session 和 token 的区别
- session
- session 是服务器生成、存储、验证,以cookie 的方式传给客户端,客户端以同样方式(cookie)发送给服务端
- session 有状态
- token
- 是加密字符串
- 服务器生成、验证,以cookie 或者 请求头的方式传给客户端,客户端以同样方式(cookie)发送给服务端
- token无状态
*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/ 谢谢!!*******
原文地址:https://www.cnblogs.com/shouhu/p/12133135.html
时间: 2024-08-27 03:56:40