Springboot之会话技术

会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应。

会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据。

会话跟踪方案:

  • 客户端会话跟踪技术:Cookie

  • 服务端会话跟踪技术:Session

  • 令牌技术

优点:HTTP协议中支持的技术

缺点:

  • 移动端APP无法使用Cookie

  • 不安全,用户可以自己禁用Cookie

  • Cookie不能跨域

Session

优点:存储在服务端,安全

缺点:

  • 服务器集群环境下无法直接使用session

  • Cookie的缺点

令牌

优点:

支持PC端、移动端解决集群环境下的认证问题减轻服务器端存储压力

缺点:

需要自己实现

JWT令牌-介绍

  • 全称:JSON Web Token(https://jwt.io/)

  • 定义了一种简洁的、自包含的格式,用于在通信双方以json数据格式安全的传输信息。

  • 组成:

> 第一部分:Header(头),记录令牌类型、签名算法等。例如:{"alg":"HS256","type":"JWT"}

>第二部分:Payload(有效载荷),携带一些自定义信息、默认信息等。 例如:{"id":"1","username":"Tom"}

>第三部分:Signature(签名),防止Token被篡改、确保安全性。将header、payload融入,并加入指定秘钥,通过指定签名算法计算而来

相关推荐
喜欢便码15 分钟前
xml与注解的区别
xml·java·开发语言
Rubypyrrha1 小时前
Spring MVC常见注解详解
java·spring·mvc
钢铁男儿1 小时前
Python中的标识、相等性与别名:深入理解对象引用机制
java·网络·python
AllenO.o1 小时前
Redis五种数据结构详解
java·数据结构·数据库·redis·缓存
重生之后端学习1 小时前
day23-集合(泛型&Set&数据结构)
java·开发语言·数据结构·算法
码农飞哥1 小时前
互联网大厂Java面试实战:从Spring Boot到微服务的技术问答与解析
java·数据库·spring boot·安全·微服务·面试·电商
雨落白笙1 小时前
端口转发与跨域处理
java
曼岛_2 小时前
[Java实战]Spring Boot 定时任务(十五)
java·spring boot·python
oliveira-time2 小时前
app加固
java
菲兹园长2 小时前
MyBatis-Plus
java·开发语言·mybatis