关于鉴权,看懂这篇就够了
发布网友
发布时间:2024-10-08 23:24
我来回答
共1个回答
热心网友
时间:2024-11-25 14:29
理解鉴权机制,这篇文章带你深入剖析
1. Cookie的起源与特性
Web服务器的无状态特性意味着需要一种方式来记录用户状态,Cookie因此应运而生。当用户登录时,服务器会生成一个Cookie,包含状态信息。下次请求时,浏览器会携带Cookie,服务器借此判断请求上下文。Cookie的出现是状态化与无状态之间的桥梁,尤其在记录购物车历史等方面起作用。
2. Cookie的工作原理与共享机制
Cookie存储在浏览器特定位置,二级域名间的共享通过设置domain属性来实现。例如,通过设置为顶级域名,可以实现SSO。但*在于,Cookie大小和数量的*,促使了Cookie-session模式的诞生。
3. Cookie-session模式与局限
Cookie-session通过集中存储sessionId解决存储*,但可能会增加单点登录失败的风险。通过Redis/Memcached缓存,能提高服务器扩展性和安全性。然而,如果负责session的服务器集群出现故障,可能会导致登录失效。
4. SSO的三种类型和CAS流程
SSO借助CAS系统,利用不同域下的Cookie不共享,实现跨系统登录。用户先在SSO系统认证,生成session和ST,后续系统通过ST验证用户身份,实现单点登录。
5. Json Web Token(JWT)模式
为避免中心化风险,JWT采用加密token的方式,服务端生成并验证token,无需额外存储session。这种方式节省了空间,但需要考虑签名防伪和token的有效期管理。
总结:鉴权方式众多,从Cookie到JWT,每种都有其优缺点,选择适合的方案取决于具体的应用场景和需求。