论坛首页 Java企业应用论坛

SpringSecurity3.X--Cas client 配置之配置session-management遇到的问题(2)

浏览 1944 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-10-27  

关于“SpringSecurity3.X--Cas client 配置之配置session-management遇到的问题(1)”请参看http://hanqunfeng.iteye.com/blog/1217703

 

接着说,按照前文配置的方式,只能迫使用户第一次访问时跳转到指定的“expiredUrl”,但此时,如果你再次访问系统,你会发现,系统会自动重新登录,并跳转到“authenticationSuccessHandler”中指定的“defaultTargetUrl”,相当于重新登录了。

 

这是为什么呢?

 

其实,ConcurrentSessionFilter验证用户过期时,只是将当前的session清除并跳转到了“expiredUrl”,并没有将用户注销,所以,当再次访问系统时,由于会有一个新的session,所以会与cas服务器进行握手验证,这实际上就相当于来了一次“单点登录”,所以,要想使用户真正不能访问系统,就需要将用户注销。

 

那么,该如何做呢?

 

我采用了一个最简单的方式,就是当跳转到“expiredUrl”后,重定向到“LogoutFilter”的“filterProcessesUrl”,这样就会将客户端从cas上注销。

 

这种注销方式,只会将当前客户端注销,而不会影响到其它客户端。

   发表时间:2011-11-02  
不错,SSO 现在我好久没有用了。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics