原文:http://www.blogjava.net/security/archive/2006/09/07/CAS_Logout_Problem.html 假设有webapp1, webapp2, cas server,webapp1, webapp2均受cas server保护 首先,我在这里简单解释一下: 第1种不能logout的情况: 1)登录了WebApp1,redirect到caserver casserver认证后,再redirect到webapp1,ok! 2)http方式 lougout casserver1,即http://yale_casserver:8080/cas/lougout 显示logout成功 3)访问webapp2,还能访问!这是非常正常的一种情况,因为你不通过https来注销,casserver怎么"杀"掉 它通过https发给你的TGC Cookie? 第2种不能logout的情况: 1)登录了WebApp1,redirect到caserver casserver认证后,再redirect到webapp1,ok! 2)https方式 lougout casserver1,即https://yale_casserver:8443/cas/lougout 显示logout成功 3)访问webapp1,还能访问!访问webapp2,不能访问,重定向到casserver要求登录!这也是非常正常的一种情况,因为你已经能够访问,你继续可以继续访问, CASLogout不能阻止你访问webapp1,它只能阻止你访问webapp2,因为你已经 被允许访问webapp1,而webapp2则还没有,如果你在(1)的时候,顺带也访问 webapp2,那么你的注销将毫无作用了,CAS无法阻止你访问这两个webapp, 因为你有Service Ticket。 如果你对此费解,那时因为你已为Logout就是退出系统,那我只能表示遗憾, 因为CAS Logout的作用不是这样,它的作用是阻止你继续通过TGC(它简单地 清楚了IE的TGC Cookie)来获取ST,阻止你获取通向其他web应用的Ticket。 所以,用完webapp1的时候,注销,然后再关闭掉IE就彻底Logout了。
java cas logout无效_解释CAS Logout问题(转)
最新推荐文章于 2021-03-04 10:02:29 发布