Spring Security 3.1 - 当会话超时发生时自动重定向到登录页面 [英] Spring Security 3.1 - Automatically redirect to login page when session-timeout occurs

查看:147
本文介绍了Spring Security 3.1 - 当会话超时发生时自动重定向到登录页面的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我需要的是能够自动重定向到登录页面,而当我使用Spring Security 3.1时,发生配置的会话超时。我正在实现包含很多jQuery功能的网页,所以我需要能够自动重定向。



目前发生的情况是,当session-timeout通过时,它不是直到执行操作 - 提交页面,重定向到登录页面。



我的spring-security.xml:

 < http auto-config =truedisable-url-rewriting =true> 
< intercept-url pattern =/ test / user *access =ROLE_USER,ROLE_ADMIN/>
< intercept-url pattern =/ test / adminaccess =ROLE_ADMIN/>
default-target-url =/ test / home
authentication-failure-url =/ test / loginfailed />
< logout invalidate-session =truelogout-success-url =/ test / logout/>
<! -
< session-management invalid-session-url =/ test / login>
< concurrency-control max-sessions =1error-if-maximum-exceeded =true/>
< / session-management>
- >
< / http>

并且在我的web.xml中有:

 <! -  Web会话超时(分钟) - > 
< session-config>
< session-timeout> 10< / session-timeout>
< / session-config>


解决方案

我不认为您需要这样做你自己,春天几乎处理这个本身。这就是Spring的伟大!


I have a wenb applicatoin based on Spring and I am implementing Spring Security 3.1.

What I need is to be able to automatically redirect to login page, when the configured session-timeout occurs. I am implemting web pages containing a lot of jQuery functionality, so I need to be able to automatically redirect.

What currently happens, when the session-timeout passes, it's not until an action is performed - page submission that it redirects to the login page.

my spring-security.xml:

<http auto-config="true" disable-url-rewriting="true">
    <intercept-url pattern="/test/user*" access="ROLE_USER, ROLE_ADMIN"  />
    <intercept-url pattern="/test/admin" access="ROLE_ADMIN"  />
    <form-login login-page="/test/login" 
            default-target-url="/test/home" 
            authentication-failure-url="/test/loginfailed" />
    <logout invalidate-session="true" logout-success-url="/test/logout" />
    <!--
    <session-management invalid-session-url="/test/login">
        <concurrency-control max-sessions="1" error-if-maximum-exceeded="true"/>
    </session-management>
    -->
</http> 

And in my web.xml I have:

<!-- Web Session Timeout (mins) --> 
<session-config> 
    <session-timeout>10</session-timeout> 
</session-config>   

解决方案

I don't think you will need to do it yourself, Spring pretty much handles this itself. That's the greatness of Spring!

这篇关于Spring Security 3.1 - 当会话超时发生时自动重定向到登录页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆