Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.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
Java Spring安全-会话超时重定向-如何启动重定向_Java_Spring Security_Session Timeout_Application Server - Fatal编程技术网

Java Spring安全-会话超时重定向-如何启动重定向

Java Spring安全-会话超时重定向-如何启动重定向,java,spring-security,session-timeout,application-server,Java,Spring Security,Session Timeout,Application Server,我想知道在会话超时时重定向是如何工作的。在我们的应用程序中,在会话超时时,用户会被重定向到登录页面 会话管理的哪些属性导致重定向 是AppServer还是spring发起了重定向 如果我截获此请求,我将获得有效会话还是无效会话?仅供参考,在我们的案例中,request.isRequestedSessionIdValid返回true。这意味着会话仍然有效。如果我仍然执行浏览器刷新,我将获得有效的会话。这是正确的行为吗?仅供参考,我们在登录页面上安装了会话侦听器和过滤器 我想知道这一切是怎么发生

我想知道在会话超时时重定向是如何工作的。在我们的应用程序中,在会话超时时,用户会被重定向到登录页面

  • 会话管理的哪些属性导致重定向
  • 是AppServer还是spring发起了重定向
  • 如果我截获此请求,我将获得有效会话还是无效会话?仅供参考,在我们的案例中,request.isRequestedSessionIdValid返回true。这意味着会话仍然有效。如果我仍然执行浏览器刷新,我将获得有效的会话。这是正确的行为吗?仅供参考,我们在登录页面上安装了会话侦听器和过滤器

我想知道这一切是怎么发生的。请帮助我理解。

嗯,Spring Security有一套非常灵活和可扩展的工具。会话管理也不例外。对于基于java的配置中的会话超时重定向,应使用:

protected void configure(HttpSecurity http) throws Exception {
  http
...
    .sessionManagement()
        .invalidSessionUrl("/some_redirect_URL")
...
}
此机制触发处理超时异常的
InvalidSessionStrategy
的一个实现

有关更多详细信息,请阅读Spring安全文档

您可以在
SessionListener中使会话无效