首页 > 其他 > 详细

CAS

时间:2020-10-12 11:02:30      阅读:32      评论:0      收藏:0      [点我收藏+]

CAS

https://apereo.github.io/cas/5.1.x/protocol/CAS-Protocol.html

CAS 是 Central Authentication Service 的缩写,中央认证服务,一种独立开放指令协议。CAS 是 耶鲁大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。

CAS 协议是一种简单且功能强大的基于 ticket 票证的协议。

CAS server 和 CAS client

  • CAS server CAS 服务器,需要独立部署的 Web 应用,主要负责验证用户和授予应用程序的访问权限。 CAS服务器是基于Spring框架构建的Java Servlet,其主要职责是通过发行和验证票证来认证用户并授予对启用CAS的服务(通常称为CAS客户端)的访问权限。当服务器在成功登录后向用户颁发授予票据的票证(TGT)时,将创建SSO会话。应用户的请求,使用TGT作为令牌,通过浏览器重定向将服务票证(ST)发行给服务。随后通过反向通道通信在CAS服务器上验证ST。

  • CAS client CAS 客户端是一个软件包,能够与应用程序集成,用来限制外部请求访问应用程序,并从 CAS server 检索已授予用户的身份。 CAS 客户端通过任何一种支持的协议与服务器进行通信。 支持的协议如下:

    CAS (versions 1, 2, and 3)
    SAML 1.1 and 2
    OpenID Connect
    OpenID
    OAuth 2.0
    WS Federation

     

TGT & ST

  • TGT (Ticket Granting Ticket) 授予票据的票证,代表一个用户的 SSO 会话(SSO Session),保存在 TGC cookie 中

  • ST(Service Ticket) ST 使用 url 中的 GET 参数进行传输,代表 CAS 服务器为特定用户授予对 CASified 应用程序的访问。

 

CAS 浏览器单点登录流程:

技术分享图片

 

 

CAS Proxy流程:

技术分享图片

CAS

原文:https://www.cnblogs.com/kevin-yuan/p/13800781.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!