春天2.5记得我

时间:2013-11-25 07:08:28

标签: spring spring-mvc login filter

我需要创建一个“保持登录状态”功能,我的应用程序目前正在使用spring 2.5,我检查了它: http://docs.spring.io/autorepo/docs/spring-security/3.0.x/reference/remember-me.html#remember-me-persistent-token 它讲述了remember-me标签的哪个部分,我也尝试扩展AbstractPreAuthenticatedProcessingFilter,但我无法通过。 有人可以指导我找到该要求的解决方案。

任何帮助都将受到高度赞赏。

谢谢,

Vaibhav的

1 个答案:

答案 0 :(得分:0)

这可以简单地使用Spring security记住我的身份验证机制来完成。我所做的是在application-context-security.xml中进行了更改,添加了标记

<remember-me services-ref="rememberMeServices" key="vaib1q2w3e4r5tazsxdc"/>

<beans:bean id="rememberMeProcessingFilter"
    class="org.springframework.security.ui.rememberme.RememberMeProcessingFilter">
    <beans:property name="rememberMeServices" ref="rememberMeServices" />
    <beans:property name="authenticationManager" ref="authenticationManager" />
</beans:bean>


<beans:bean id="rememberMeServices"
    class="org.springframework.security.ui.rememberme.TokenBasedRememberMeServices">
    <beans:property name="userDetailsService" ref="userDetailsService" />
    <beans:property name="key" value="vaib1q2w3e4r5tazsxdc" />
    <beans:property name="tokenValiditySeconds" value="120"/>
    <beans:property name="alwaysRemember" value="false" />
</beans:bean>

<beans:bean id="rememberMeAuthenticationProvider"
    class="org.springframework.security.providers.rememberme.RememberMeAuthenticationProvider">
    <custom-authentication-provider />
    <beans:property name="key" value="vaib1q2w3e4r5tazsxdc" />
</beans:bean>

通过添加上面的名称'SPRING_SECURITY_REMEMBER_ME_COOKIE'的新cookie将会被创建,并使事情像魅力一样。

谢谢, -V