2013-03-30 2 views
1

스프링 보안 3.0을 구현하려고했지만 내 응용 프로그램에서 서비스를 기억하지만 불행히도 제대로 작동하지 않습니다.스프링 보안 3.0 기능 기억하기

스프링 관련 문서가 아니더라도 이와 관련된 구체적인 사례를 찾지 못했습니다. 누군가가 실용적인 예제 코드를 제공 할 수 있다면 좋을 것이다. 내 spring-security.xml 파일의 코드를 찾으십시오.

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:security="http://www.springframework.org/schema/security" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
     http://www.springframework.org/schema/security 
     http://www.springframework.org/schema/security/spring-security-3.0.xsd"> 


<security:http entry-point-ref="myAuthenticationEntryPoint"> 

    <security:session-management 
     session-fixation-protection="newSession" /> 
    <security:custom-filter position="FORM_LOGIN_FILTER" 
     ref="processingFilter" /> 
    <security:logout logout-url="/logout" 
     logout-success-url="/login" /> 
    <security:intercept-url pattern='/index.jsp' 
     filters='none' /> 
    <security:intercept-url pattern='/login*' 
     filters='none' /> 
    <security:remember-me key="springrocks" /> 

    <security:intercept-url pattern='/admin/**' 
     access="ROLE_ADMIN" /> 

</security:http> 

<security:authentication-manager> 
    <security:authentication-provider 
     ref="myAuthenticationProvider"></security:authentication-provider> 
</security:authentication-manager> 
<bean id="myAuthenticationProvider" 
    class="example.AuthenticationProviderExtended"> 

</bean> 

<bean id="authenticationManager" class="example.AuthenticationManagerExtended" /> 

<bean id="processingFilter" class="example.FormBasedProcessingFilter"> 
    <property name="authenticationManager" ref="authenticationManager" /> 
    <property name="usernameParameter" value="username" /> 
    <property name="passwordParameter" value="password" /> 
    <property name="allowSessionCreation" value="true" /> 
    <property name="authenticationFailureHandler" ref="simpleUrlAuthenticationFailureHandler" /> 
    <property name="authenticationSuccessHandler" ref="simpleUrlAuthenticationSuccessHandler" /> 
    <property name="filterProcessesUrl" value="/performLogin" /> 
</bean> 


<bean id="simpleUrlAuthenticationFailureHandler" class="example.AuthenticationFailureHandler"> 
    <property name="defaultFailureUrl" value="/login"></property> 
</bean> 

<bean id="simpleUrlAuthenticationSuccessHandler" 
    class="org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler"> 
    <property name="defaultTargetUrl" value="/home" /> 
</bean> 


<bean id="myAuthenticationEntryPoint" 
    class="example.CustomAuthenticationEntryPoint"> 
    <property name="loginFormUrl" value="/login" /> 
</bean> 

<bean id="rememberMeFilter" 
    class="org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter"> 
    <property name="rememberMeServices" ref="rememberMeServices" /> 
    <property name="authenticationManager" ref="authenticationManager" /> 
</bean> 

<bean id="rememberMeServices" 
    class="org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices"> 
    <property name="userDetailsService" ref="myUserDetailsService" /> 
    <property name="key" value="springRocks" /> 
</bean> 

<bean id="rememberMeAuthenticationProvider" 
    class="org.springframework.security.authentication.RememberMeAuthenticationProvider"> 
    <property name="key" value="springRocks" /> 
</bean> 

<bean id="myUserDetailsService" class="example.MyCustomeUserDetailsService"> 

</bean> 

</beans> 
+0

당신의 질문에 대답하면 내 대답을 받아 들일 수 있습니다 :) – Michael

답변

0

을 당신은 양식이 확인란 (또는과 입력의 다른 유형)이 포함되어 있는지 확인하는 데 필요한 나를 이름

<input type="checkbox" name="_spring_security_remember_me"/> 
에게 속성 기억

이 속성은 xml의 remember-me-parameter를 통해 구성 할 수 있습니다 (예 :

).
<remember-me remember-me-parameter="please_remember"/>