问题描述:cas登出的时候,发现第二个用户登录打开的session数据是之前用户的,用户session在退出的时候没有清除。
问题环境:应用服务器用apache的反向代理做了负载均衡。
参考:
https://issues.jasig.org/browse/CAS-832
https://issues.jasig.org/browse/CAS-742
分析:cas 需要通知用户登录过的所有cas client,但目前cas core代码没有地方存储需要通知后台服务器的url, 导致cas client没有正确的通知到。
方案:cas server通知所有负载后的cas client,实现可以根据负载的实现不同而不同,比如我用的负载是通过记录route来区分的,在org.jasig.cas.util.HttpClient的每一次call方法里面对所有cas client的connection 请求session中加入routeid.
CAS Single Sign Out 负载均衡登出问题
猜你喜欢
转载自lwwnet.iteye.com/blog/1845832
今日推荐
周排行