CAS的logout问题

今天使用CAS部署实现了单点登录,扩展了界面,也扩展了登陆认证,但是在logout的时候发现一些问题:

 

前提:两个web应用web1和web2,一个CAS服务端casserver,本机域名:www.mycas.com

 

问题一:

1.登录了web1,redirect到casserver,casserver认证后,再redirect到web1;

2.http方式 lougout casserver,即http://www.mycas.com:8080/cas/lougout,显示logout成功;

3.访问web1,web2,还是不用验证就能访问,即相当于注销没用;

4.原因是你不通过https来注销,casserver无法"杀"掉它通过https发给你的TGC Cookie,所以你可以关闭浏览器注销.

  

问题二:

1.登录了web1,redirect到casserver,casserver认证后,再redirect到web1;

2.https方式 lougout casserver1,即https://www.mycas.com:8443/cas/lougout,显示logout成功

3.访问web1不用验证就能访问,但是访问web2的时候就无法访问了,重定向到casserver的登录界面;

4原因是你已经能够访问的东西可以继续访问,CASLogout不能阻止你访问web1,它只能阻止你访问web2,因为你已经被允许访问web1,而web2则还没有,如果你在(第一种情况)的时候,顺带也访问web2,那么你的注销将毫无作用了,CAS无法阻止你访问这两个web,因为你有Service Ticket。

 

如果你认为Logout就是退出系统,那时不正确的,因为CAS Logout的作用不是这样,它的作用是阻止你继续通过TGC(它简单地清除了IE的TGC Cookie)来获取ST,阻止你获取通向其他web应用的Ticket。所以,用完web1的时候,注销,然后再关闭掉IE就彻底Logout了。

 

另外也可以增加JS脚本,在logout时将对应的jsessionid清空;另外注销地址要考虑登录时是否有使用HTTPS,登录时使用了HTTPS,则注销时一样要使用HTTPS

 

(By:Gxmis-alextang)

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值