spring mvc中的并发用户登录

Posted

技术标签:

【中文标题】spring mvc中的并发用户登录【英文标题】:Concurrent user Login in spring mvc 【发布时间】:2014-12-31 10:37:16 【问题描述】:

我目前在 spring mvc 中实现并发用户会话时遇到问题。我的要求是“我有一个使用 Spring MVC 的 Web 应用程序,并且我有自己的登录表单,但我还没有实现 Spring Security(这意味着我没有在我的 Web 应用程序中配置任何基于角色的用户限制)。我想要只有一个具有相同用户名的用户可以从一台机器登录。我已经在网上冲浪了,但找不到任何有用的链接或示例项目(没有基于角色的)。

我的要求:

    每个会话一个用户 没有基于角色的限制 拥有自己的登录表单,一旦用户登录,用户对象(包含用户名和密码)将存储在会话对象中 如果用户尝试第二次登录,则应终止先前的用户会话并允许新用户(第二个用户)访问主页。

有人可以根据我的要求为我提供解决方案、链接或示例项目吗?非常感谢提前:)

【问题讨论】:

【参考方案1】:

为什么不直接使用 Spring Security?它将为您处理停用会话。您可以使用自己的登录表单,而不是根据角色限制您的任何端点。

您可以像这样配置最大会话数:

【讨论】:

是的,我想使用 Spring Security,但是我在网上找到的所有示例都比较混乱,我的要求是基于角色完成的(这不是我的要求,我的应用程序中的所有页面都是所有用户均可访问)。更准确地说,我没有找到任何示例,也没有通过互联网链接来满足我的要求。任何链接都会更有用! 很抱歉回复晚了!您可以在每个 URL 的基础上定义角色,可接受的角色是“匿名”,它不需要任何现有的用户原则。 docs.spring.io/spring-security/site/docs/3.0.x/reference/… 您仍然可以将用户信息存储在用户主体中,并为任何未经身份验证的用户提供默认信息。这是否满足您的要求?

以上是关于spring mvc中的并发用户登录的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 spring 3.2 新 mvc 测试登录用户

以编程方式登录用户 SPring MVC

我想根据登录用户更改主页菜单。我如何在 Spring MVC 中做到这一点?

Spring Boot中Spring MVC的整合支持

Spring MVC + Spring Security 登录与一个 REST Web 服务

mybatis学习笔记二mybatis结合spring mvc实现(用户登录,数据查询)