[Java][Spring][scurity]同步session控制,防止一个用户多次登录

[Spring][scurity]同步session控制。防止一个用户多次登录

假设你希望限制单个用户仅仅能登录到你的程序一次,Spring Security通过加入以下简单的部分支持这个功能。

 


1、你须要把以下的监听器加入到你的web.xml文件中,让Spring Security获得session生存周期事件: 
<listener>
  <listener-class>
org.springframework.security.ui.session.HttpSessionEventPublisher
</listener-class>
</listener>


2、控制单个用户仅仅能登录到你的程序一次的两种控制手段

2.1、第二次登录会让第一次登录失效。

然后。在你的application_context增加例如以下部分: 
<http>
    ...
    <concurrent-session-control max-sessions="1" />
  </http>


2.2、防止第二次登录时报错、第二次登录将被阻止。

<http>
    ...
    <concurrent-session-control max-sessions="1" exception-if-maximum-exceeded="true"/>
  </http>



posted @ 2017-05-18 15:53  gccbuaa  阅读(524)  评论(0编辑  收藏  举报