Spring mvc 4并发会话控制

时间:2015-11-10 09:30:22

标签: java spring session authentication

我已阅读本网站和有关设置并发会话控制的文档,我不知道Spring处理得如此。

实施例: Question 1 Question 2 其中......

但是我无法在Spring版本4控制器(春季4 - 注释)中以编程方式(不是应用程序上下文)找到如何执行此操作。

<http>
  ...
   <session-management>
     <concurrency-control max-sessions="1" />
   </session-management>
</http>

我已经阅读过有关ConcurrentSessionControlAuthenticationStrategy,ConcurrentSessionControlStrategy,CompositeSessionAuthenticationStrategy但尚未实现的内容。我要做的是确保用户只能登录一次,如果其他人使用相同的用户名登录,则会给他们一个错误页面。

感谢任何帮助或建议......

2 个答案:

答案 0 :(得分:0)

这就是我在我的应用中所拥有的。如果存在有效会话

,则会对任何尝试登录产生错误

... security:concurrency-control max-sessions =&#34; 1&#34; error-if-maximum-exceeded =&#34; true&#34; ..

答案 1 :(得分:0)

希望您可以通过实现javax.servlet.http.HttpSessionBindingListener接口并通过java配置将其注册为ServletContext listener来实现此目的。

参考:How to invalidate another session when an user is logged in twice?