I use 'remember me' function from Spring Security. Also I use LDAP to check user authentication. Here is my security-context.xml:
<sec:http use-expressions="true">
<sec:intercept-url pattern="/login" access="permitAll()"/>
<sec:intercept-url pattern="/_*.js" access="permitAll()"/>
<sec:intercept-url pattern="/403" access="isAuthenticated()"/>
<sec:form-login login-page="/login" authentication-success-handler-ref="loginController"
authentication-failure-handler-ref="loginController"/>
<sec:remember-me user-service-ref="ldapUserDetailsService" data-source-ref="dataSource"/>
<sec:access-denied-handler error-page="/403"/>
<sec:logout/>
</sec:http>
<sec:authentication-manager>
<sec:authentication-provider ref="customizedActiveDirectoryAuthenticationProvider"/>
</sec:authentication-manager>
<bean id="userDetailsMapper"
class="MyLdapUserDetailsMapper"/>
<bean id="authoritiesPopulator"
class="MyAuthoritiesPopulator"/>
<bean id="customizedActiveDirectoryAuthenticationProvider"
class="MyCustomizedActiveDirectoryAuthenticationProvider">
<!--some configuration here-->
</bean>
<bean id="ldapUserDetailsService" class="org.springframework.security.ldap.userdetails.LdapUserDetailsService">
<!--some configuration here-->
</bean>
And my login.js contains:
xtype: 'checkbox',
fieldLabel: ' ',
boxLabel: 'Remember me',
labelSeparator: '',
name: '_spring_security_remember_me',
checked: false
I found that RememberMeAuthenticationFilter is used if it helps.
In the most cases remember-me function works fine. But sometimes after I close browser, it doesn't remember me and I see login page, although I pressed 'remember me' before.
What is wrong here? Or may be problem is not with Spring Security?
I read this, but I use Spring Security 3.1.x that does not contain WebSecurityConfigurerAdapter. So I don't know how I can use this article.