[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>



你可能感兴趣的:([Java][Spring][scurity]同步session控制,防止一个用户多次登录)