首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

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

2012-10-08 
SpringSecurity3.X--Cas client 配置之配置session-management遇到的问题(2)关于“SpringSecurity3.X--Cas

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

关于“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上注销。

?

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

热点排行