1

我正在尝试使用 Spring Security 实现会话超时。我有 web.xml 和安全上下文设置,但是当用户尝试访问根目录“/”时我遇到了问题。Spring 认为这是一个无效会话(因为从技术上讲它是)并重定向到 /sessiontimeout。

由于用户尚未登录,是否有忽略此初始无效会话?或者区分过期会话和无效会话?

web.xml

<session-config>
    <session-timeout>1</session-timeout>
</session-config>

安全上下文

<security:session-management invalid-session-url="/sessiontimeout" />

或者我可以采取简单的方法并在每个页面上添加一些 javascript...

4

1 回答 1

2

“无效会话”不是用户未经身份验证的会话。当浏览器为旧会话提交 JSESSIONID cookie 时,例如当它超时时,但也可能在用户注销但 cookie 仍然存在时。

这很可能就是您所看到的。您可以将 Spring Security 配置为在用户注销时尝试删除会话 cookie,如参考手册中所述

于 2013-01-29T19:46:27.843 回答