黑狐家游戏

cas sso单点登出原理,cas单点登录的原理

欧气 2 0

本文目录导读:

  1. CAS单点登录原理
  2. CAS单点登出原理

CAS单点登录与登出原理深度剖析

CAS单点登录原理

(一)基本概念

CAS(Central Authentication Service)即中央认证服务,是一种开源的单点登录协议,它旨在为多个应用程序提供统一的身份验证机制,使得用户只需登录一次就能够访问多个相互信任的应用系统。

(二)核心组件

cas sso单点登出原理,cas单点登录的原理

图片来源于网络,如有侵权联系删除

1、CAS Server(认证服务器)

- 它是整个单点登录系统的核心,负责对用户进行身份验证,CAS Server存储着用户的账号、密码等认证信息,在企业环境中,可能存储着员工的工号和对应的密码哈希值。

- 当用户尝试访问受保护的应用时,应用会将用户重定向到CAS Server进行登录验证。

2、CAS Client(客户端)

- 集成在各个需要单点登录的应用系统中,CAS Client的主要任务是拦截应用系统的未认证请求,并将请求重定向到CAS Server进行认证。

- 它还负责接收CAS Server返回的认证结果,并根据结果决定是否允许用户访问应用系统。

(三)登录流程

1、用户访问应用

- 当用户首次访问某个受保护的应用(如App1)时,由于没有登录,App1中的CAS Client会检测到用户未认证的状态,CAS Client会构造一个重定向请求,将用户的浏览器重定向到CAS Server的登录页面,这个重定向请求中通常包含了应用的标识(如App1的服务地址),以便CAS Server在认证成功后知道将用户重定向回哪个应用。

2、用户在CAS Server登录

cas sso单点登出原理,cas单点登录的原理

图片来源于网络,如有侵权联系删除

- 用户在CAS Server的登录页面输入用户名和密码,CAS Server接收到用户的登录凭据后,会对其进行验证,如果验证通过,CAS Server会创建一个全局唯一的票据(TGT,Ticket - Granting Ticket),这个TGT代表用户在CAS Server的登录会话。

3、生成ST并返回

- CAS Server然后会为用户访问的目标应用(App1)生成一个服务票据(ST,Service Ticket),ST是一个临时的、一次性的票据,它包含了用户身份信息和目标应用的标识等内容,CAS Server将ST通过重定向的方式返回给用户的浏览器,浏览器再将ST发送给App1中的CAS Client。

4、应用验证ST并授权访问

- App1中的CAS Client接收到ST后,会将ST发送到CAS Server进行验证,CAS Server验证ST的有效性,如检查ST是否过期、是否与对应的TGT匹配等,如果ST验证通过,CAS Server会向CAS Client返回用户的身份信息,CAS Client根据这些信息确定用户已认证,从而允许用户访问App1。

CAS单点登出原理

(一)登出的发起

1、用户主动登出

- 当用户在某个已登录的应用(如App1)中选择登出时,App1中的CAS Client会首先清除本地的用户会话信息,例如删除本地保存的用户身份标识等,CAS Client会构造一个登出请求,将用户的浏览器重定向到CAS Server的登出页面,这个登出请求中包含了用户当前所在应用(App1)的标识。

2、CAS Server接收登出请求

- CAS Server接收到来自App1的登出请求后,会根据请求中的应用标识,查找与该应用相关的所有用户会话信息,这里的会话信息包括之前为用户访问该应用及其他应用所生成的TGT和ST等相关票据信息。

cas sso单点登出原理,cas单点登录的原理

图片来源于网络,如有侵权联系删除

(二)登出的处理

1、清除全局会话

- CAS Server会首先清除与用户登录相关的全局TGT,TGT是用户登录CAS Server的全局会话标识,清除TGT意味着用户在CAS Server的全局登录状态被注销。

2、通知相关应用

- CAS Server会遍历所有信任的应用(包括App1以及用户可能通过单点登录访问过的其他应用,如App2、App3等),向这些应用中的CAS Client发送登出通知,这个通知会告知应用该用户已经在CAS Server端登出,应用应该清除本地与该用户相关的会话信息。

3、应用端的处理

- 各个应用(如App2和App3)中的CAS Client接收到CAS Server的登出通知后,会清除本地保存的用户会话信息,包括本地缓存的用户身份信息、之前保存的ST等相关票据信息,这样,即使用户再次访问这些应用,也会被视为未登录状态,需要重新进行登录验证。

通过这种单点登出机制,CAS确保了用户在一个应用中登出后,能够在所有通过CAS实现单点登录的应用中同时登出,保证了用户身份管理的一致性和安全性。

标签: #cas #sso #单点登录 #单点登出

黑狐家游戏
  • 评论列表

留言评论