[心缘地方]同学录
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版
登录系统:用户名: 密码: 如果要讨论问题,请先注册。

[转帖]CAS单点退出不好使

上一篇:[备忘]CAS 4.2.7版本,去掉https验证
下一篇:[备忘]CAS 4.2.7版本,shiro+CAS集成的小问题

添加日期:2017/7/17 9:57:40 快速返回   返回列表 阅读2018次
参考:
http://howiefh.github.io/2015/05/19/shiro-cas-single-sign-on/?utm_source=tuicool&utm_medium=referral

如题,现象就是A执行退出,A确实退出了,但B依然可用。
换成B也一样,B退出了,A依然可用。

原因是SessionManager使用了DefaultWebSessionManager,也就是shiro自己管理Session,

而单点退出的Servlet只处理了容器默认的session,shiro管理的session没管。

解决办法:
(1)不用DefaultWebSessionManager,改成ServletContainerSessionManager,由容器管理session,自然就没问题了。

(2)坚持用DefaultWebSessionManager,那么就得自己改
org.jasig.cas.client.session.SingleSignOutFilter、
SingleSignOutHandler和SessionMappingStorage。

原理比较简单,创建token时,把session存起来,单点退出时,把session取出来,无效掉。

修改的话,怎么改?


 

评论 COMMENTS
没有评论 No Comments.

添加评论 Add new comment.
昵称 Name:
评论内容 Comment:
验证码(不区分大小写)
Validation Code:
(not case sensitive)
看不清?点这里换一张!(Change it here!)
 
评论由管理员查看后才能显示。the comment will be showed after it is checked by admin.
CopyRight © 心缘地方 2005-2999. All Rights Reserved