应用场景:

一个企业中有不同的应用,员工只需登录一次,可以同步登录状态到其他服务(即访问别的应用就不用"登录")


**实际例子:** 在同一个浏览器下,登录新浪博客后,再去访问新浪微博,则会发现账号已登录。

WIKI: ​​https://en.wikipedia.org/wiki/Single_sign-on​




SSO 技术简介


涉及技术:

  1. Cookie
  2. 认证中心



举个例子:

  1. 浏览器
  2. 系统A(​​www.a.com​​)
  3. 系统B(​​www.b.com​​)
  4. 认证中心(​​www.sso.com​​)

(1)首次访问

  1. 浏览器访问A,A发现验证未登录,重定向到认证中心
  2. 浏览器访问认证中心,并登陆
  3. 认证中心创建全局会话,创建ticket,并重定向到A
  4. 系统A保存认证中心的cookie,并访问A
  5. A获取ticket,向认证中心进行验证
  6. 认证中心验证ticket有效,返回给A
  7. A创建局部会话,并给浏览器展示受保护资源
  8. 浏览器保存A的cookie

【SSO】单点登录_重定向


【SSO】单点登录_单点登录_02



(2)登录系统A以后,再来访问B系统

【SSO】单点登录_单点登录_03


【SSO】单点登录_新浪博客_04



(3)注销登录

【SSO】单点登录_新浪博客_05