From 3a96117be095adbe46d5f7bfeed138834622dc69 Mon Sep 17 00:00:00 2001 From: "liqinghe.lqh" Date: Sat, 24 Feb 2024 16:50:56 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A1=A5=E5=85=85=E8=AF=B4=E6=98=8E?= =?UTF-8?q?=EF=BC=9A=E4=B8=BA=E4=BB=80=E4=B9=88=E4=BD=BF=E7=94=A8=20Sessio?= =?UTF-8?q?n=20=E8=BF=9B=E8=A1=8C=E8=BA=AB=E4=BB=BD=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E7=9A=84=E8=AF=9D=E4=B8=8D=E9=80=82=E5=90=88=E7=A7=BB=E5=8A=A8?= =?UTF-8?q?=E7=AB=AF=20=EF=BC=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../security/advantages-and-disadvantages-of-jwt.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/system-design/security/advantages-and-disadvantages-of-jwt.md b/docs/system-design/security/advantages-and-disadvantages-of-jwt.md index 9839ed60..2781392d 100644 --- a/docs/system-design/security/advantages-and-disadvantages-of-jwt.md +++ b/docs/system-design/security/advantages-and-disadvantages-of-jwt.md @@ -83,6 +83,10 @@ public class XSSFilter implements Filter { 使用 Session 进行身份认证的话,需要保存一份信息在服务器端,而且这种方式会依赖到 Cookie(需要 Cookie 保存 `SessionId`),所以不适合移动端。 但是,使用 JWT 进行身份认证就不会存在这种问题,因为只要 JWT 可以被客户端存储就能够使用,而且 JWT 还可以跨语言使用。 +> 为什么使用 Session 进行身份认证的话不适合移动端 ? +> 1. 状态管理: Session 基于服务器端的状态管理,而移动端应用通常是无状态的。移动设备的连接可能不稳定或中断,因此难以维护长期的会话状态。如果使用 Session 进行身份认证,移动应用需要频繁地与服务器进行会话维护,增加了网络开销和复杂性; +> 2. 兼容性: 移动端应用通常会面向多个平台,如 iOS、Android 和 Web。每个平台对于 Session 的管理和存储方式可能不同,可能导致跨平台兼容性的问题; +> 3. 安全性: 移动设备通常处于不受信任的网络环境,存在数据泄露和攻击的风险。将敏感的会话信息存储在移动设备上增加了被攻击的潜在风险。 ### 单点登录友好