CAS 单点登录简介

本文介绍了CAS单点登录框架的原理和工作过程,包括Service Ticket、Ticket Granting Cookie和Ticket Grangting Ticket的概念。CAS作为耶鲁大学开源的SSO解决方案,简化了用户在多个项目间的登录流程,提高用户体验。文章详细阐述了CAS的工作流程,从用户访问服务到验证票据,再到传输用户信息的过程,并提及了TGC在单点登录中的关键作用。

前一段时间,公司项目因为要与其他项目之间进行集成,弄成一个整体的大项目,因为各个项目都是老项目了,每一个项目都有一个自己的登录过滤机制,这时的需求就变成了只需一次登录,就可以登录进去其他子项目,不用每次访问其他项目都需要登录一次。

这个任务就交给了我这个刚毕业参加工作没多久的身上,说实话,对我来说还是挺难的。后来在网上查找各种资料,就选定了用的比较多的成熟框架 CAS 。在实际开发中,也碰到了很多各种各样的问题,在这里把自己对 CAS 的理解,碰到的问题总结一下,也希望能够帮助到更多的人。

单点登录

单点登录就是一次登录过后,再没有退出或者清缓存的情况下,用户再访问其他集成了这个功能的项目时,就不需要进行重复的登录操作,这样会大大的方便用户的使用。如果每次都需要用户登录一遍,估计这个项目也就没多少人用了,所以单点登录这个功能是非常必要的。

CAS

CAS 是耶鲁大学开源的一个单点登录框架,旨在为 web 应用系统提供一个安全可靠的单点登录框架,最终,在我们公司的项目中选择了使用 CAS 框架。

名词解释

在我们了解 CAS 的工作原理之前,我们应该首先了解下在 CAS 里面的一些概念,这样对我们理解 CAS 有一个更好的帮助。

ST:Service Ticket,服务票据,服务的唯一标识码,由 CAS 认证中心生成,返回给用户,这时 service 拿到 ST 后,又会去到 CAS 验证中心去验证,如果验证成功,则允许用户访问资源。

TGC:Ticket Granting Cookie,CAS 系统用来识别用户身份的凭证。

TGT:Ticket Grangting Ticket,票据授权票据,获取这个 TGT 后才能申请服务票据(ST),用户如果在 CA S系统认证成功之后,就会生成 TGC 写入浏览器,同时也生成一个 TGT,TGT 对象的id就是 cookie 值。之后每次请求过来通过此 cookie 来从缓存获取 TGT,就不用提交身份认证信息(Credentials)。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值