在Spring Security中为不同选项卡强制执行单独的会话

ish*_*han 5 session spring spring-mvc spring-security

我在Web应用程序中使用Spring Security v 3.1.3。该应用程序具有在Spring Security中使用custom-filter自定义的单项登录表单。现在,我的配置允许用户在同一浏览器中从其他选项卡打开URL时自动登录该应用程序,这是Spring安全会话管理的默认行为。

我想确保每当用户登录应用程序时,会话都不应在不同选项卡之间共享。在打开新选项卡时,他应该获得登录页面,并且登录后将在同一浏览器中创建一个新会话。目前,我找不到任何使用Spring安全框架来做到这一点的方法。我不介意将JsessionID集成到URL中,但是如果有另一种方法会更好。

Adr*_*pez 0

这不是 Spring Security 的限制,而是浏览器如何使用 cookie 的一般限制;如果您设置了 cookie,它将被所有选项卡共享。

说我现在能想到的唯一合理的选择是按照您的建议在 URL 中包含会话 id。