一次登录、便捷访问所有?聊聊CAS单点登录是如何实现的

本文介绍了CAS单点登录协议如何通过统一认证中心简化用户登录流程,实现跨应用系统的安全访问。通过比喻和实际操作流程,阐述了协议的工作原理,强调了其在提高效率和安全性方面的价值。
摘要由CSDN通过智能技术生成

5e333364e8a1b59903d78a3025ee1976.jpeg


前言



之前我们说到”对组织建设的价值和建设思路,知道了通过实施统一身份管理解决方案,能够简化用户管理、降本增效、并加强安全性。对于员工来说,给予一套单一的凭证(如账号密码),就可以使其访问多个权限内的应用系统,也就是说员工只需要输入一套用户名和密码,就可以访问OA、邮箱、HR、CRM等所有工作相关的应用系统。那么本次我们就以CAS单点登陆协议为例,让大家了解这个过程是如何实现的,它的原理又是什么。




CAS原理介绍



统一认证服务(CAS)是一种开放、简单且完备的身份验证协议。该协议是客户端、服务器与浏览器的三方约定,是大家都必须遵守的规则。我们把用户访问业务的流程做个简单的比喻,如下图:


52e6b2a278e496c71810d438096a7dce.jpeg


你去某单位食堂吃饭,食堂打饭的阿姨发现你是第一次来打饭,并且没有带饭票,这时候阿姨会告诉你,不收现金,并且让你去门口找换票的(passport.com)换小票。于是你到门口完成身份认证和记录以后拿到饭票,再去找食堂阿姨,食堂阿姨拿着你的票去找换票的查询饭票的真伪,得到饭票是真的答复后,于是就给你打饭了。


当然了,现实访问业务的过程中,我们会分为几种情况,如:第一次访问业务、第二次访问业务、访问其他业务。




第一次访问业务



如果把这个流程转换成我们访问业务的流程,那么就会有如下对应关系: ●  食堂阿姨→你要访问的业务资源门口换票的→统一认证中心 ●  饭票的流转过程→cas协议的认证过程
所以转换后的第一次访问业务的流程就变为: 第一步:用户访问abcd.com,过滤器判断用户是否登录。 第二步:过滤器检测到用户没有登录,则重定向到http://passport.com认证中心。 第三步:重定向到passport.com后,用户输入用户名密码通过认证中心的验证,随后passport.com将用户登录的信息记录到认证中心的session中。 第四步:passport.com给浏览器发送一个特殊的凭证。 第五步:浏览器将凭证交给www.abcd.com。 第六步:www.abcd.com的过滤器会取到凭证的值,然后通过http方式调用passport.com验证该凭证是否是有效的,从而判断用户是否登录成功。 第七步:验证凭证有效,www.abcd.com接收到认证中心的返回结果,知道了用户合法,展示相关资源到用户浏览器上,完成访问。

e335dcda207e5816ad5f73ba6155bc9a.jpeg




第二次访问业务



如果再次访问abcd.com会发生什么呢,我们这时候要了解一个名词,那就是Session。
什么是Session呢,在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
所以这时候如果用户第二次访问abcd.com,通过使用在session中记录的用户信息,因此直接就可以通过了,不用验证了。




访问xyz.com



那么如果用户这时候再访问xyz.com会发生什么呢,也就是你去另一个阿姨那边打饭会发生什么?
这时候另一个阿姨发现你是第一次来,依然会让你去找门口换票的,但是这时候,你已经在认证中心认证过了,也就是换票的那边已经存储有你的相关对应信息了,会直接通过之前颁布凭证的信息查询关联关系,找到根票据TGT ,然后通过根票据TGT重新给你颁布一个针对xyz,com的“饭票”,也就是小令牌,这样你就能拿着重新颁发的小令牌访问xyz,com了,xyz,com依然会再次向认证中心认证验证令牌是否有效,再得到验证有效的结果后,就会让用户通过资源访问请求,返回内容了。至此,CAS登录的整个过程就完毕了。




总结



CAS单点登录协议作为一种简单而高效的身份验证解决方案,为用户提供了更便捷、更安全的登录体验。通过引入中心化认证服务器和基于票据的认证机制,CAS协议实现了用户在多个应用系统间的单一登录,极大地简化了用户的登录流程,提高了系统的安全性和可靠性。在当前信息化建设的背景下,CAS协议必将发挥越来越重要的作用,成为各种类型应用的理想选择,为用户带来更加便捷和安全的在线体验。
当然了,除了CAS还有很多其他应用非常广泛的SSO协议,不同的协议的适用场景、优势都有不同,CAS相对于其他协议来说相对简单,易于理解和实现,并且它的工作流程清晰,由于协议本身的简洁性,可以更快地部署和集成到现有的应用程序中,特别适用于需要在多个应用程序之间实现单一登录的场景,这也是导致它大面积被使用的重要特点。



https://mp.weixin.qq.com/s/bOPix3iVHTk_PM4rBX0rcA


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值