Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring security Spring安全性:会话url无效,而注销成功url无效_Spring Security - Fatal编程技术网

Spring security Spring安全性:会话url无效,而注销成功url无效

Spring security Spring安全性:会话url无效,而注销成功url无效,spring-security,Spring Security,我使用的是SpringSecurity 3.1。在我添加会话管理的无效会话url属性之前,它已正确重定向到注销页面。然而,在添加无效的会话url后,即使我点击了注销按钮,它也会重定向到会话过期页面。 另外,在会话超时后,若我加载登录页面,它会重定向到会话过期页面 我必须检查会话是否过期,并在会话过期时将用户重定向到会话过期页面。然而,在使用无效会话url标记后,它会将我重定向到会话过期页面,即使对于登录和注销场景也是如此 在一些帖子中,建议不要使用无效的会话url。然而,我无法理解,那个么在实际

我使用的是SpringSecurity 3.1。在我添加会话管理的无效会话url属性之前,它已正确重定向到注销页面。然而,在添加无效的会话url后,即使我点击了注销按钮,它也会重定向到会话过期页面。 另外,在会话超时后,若我加载登录页面,它会重定向到会话过期页面

我必须检查会话是否过期,并在会话过期时将用户重定向到会话过期页面。然而,在使用无效会话url标记后,它会将我重定向到会话过期页面,即使对于登录和注销场景也是如此

在一些帖子中,建议不要使用无效的会话url。然而,我无法理解,那个么在实际会话过期之后,我如何才能显示会话过期页面


任何帮助都将不胜感激。

会话到期仅限于检测提交请求中的无效会话cookie。如果您的注销没有删除会话cookie,那么如果您再次访问该站点,将重新提交该cookie,这将触发无效的会话URL。这一点在本文中进行了解释。我会读到这一点和随附的脚注。如上所述,您需要删除会话cookie,这取决于您的容器。请尝试在安全配置中添加以下内容

<http>
    <logout delete-cookies="JSESSIONID" />
</http>

默认情况下,注销过程将首先使会话无效,从而触发会话管理重定向到超时页面。通过指定invalidate session=“false”将修复此行为

    <sec:logout logout-success-url="/logout" invalidate-session="false" 
delete-cookies="JSESSIONID" />


我可以知道是否需要
删除cookies
吗?如果这样做,通过
设置最大会话限制可能会导致问题,因为您没有使会话无效。