CAS单点登录登出的实现

本文探讨了CAS单点登录系统的工作原理,包括用户登录各应用系统的流程及登出过程。在传统模式下,CAS通过TGT管理用户会话。然而,面对门户系统的新需求,即允许用户单独登录各个子系统,文章提出了一种解决方案:在每个系统中仅拦截特定URL以触发CAS登录,从而在保证门户单点登录的同时,解决单独登出的挑战。
摘要由CSDN通过智能技术生成

        单点登录登出是门户实现方案很重要的一个环节,通过单点登录来保证一次登录访问所有的应用系统,比如常用的方案是开源的CAS单点登录解决方案,这是耶鲁大学的开源项目,详细配置请看我的博客http://blog.csdn.net/ynwso/article/category/3220653

        通常单点登录的过程应该是下面这样:

        1. 用户访问系统A,被跳转到CAS登录页面(系统A应用要有CAS的客户端包,并在系统A增加CAS的过滤器)。

        2. 用户登录 CAS成功,跳转回系统A,并附带上ST(CAS会在服务端保存TGT,并把TGT的ID作为cookie写到用户的浏览器,同时用TGT签发一个ST返回)。

        3. 系统A去CAS端验证ST,如果ST有效,则可以访问系统A

        4. 用户访问系统B, 被跳转至CAS,CAS发现有TGT的cookie值 ,于是查找是否存在有效的TGT,有则签发一个ST返回,同步骤2

        5. 系统B去CAS端验证ST,同步骤3

        登出的过程是

        1. 系统登出系统B, 系统B调用CAS的登出地址

        2.用户成功登出,CAS清除自己保存的TGT和用户的浏览器cookie,并根据之前的登入记录,分别调用系统A和B的URL,后面会跟一个参数logoutRequest

        3.系统A和系统B都被登出(A和B都应该要增加CAS的登出过滤器和session监听器,登出过滤器要在登入过滤器之前,过滤器拦截到带有logoutRequest参数的请求会执

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值