1

私は現在、私のウェブサイトに機能を覚えて実装しようとしています。以下は私の構成の一部です

<security:remember-me services-ref="rememberMeServices" />  
<bean id="rememberMeServices" class="com.entertainment.ecom.web.auth.EcomRemembe rMeServices">  
<property name="userDetailsService" ref="ecomUserDetailsService"/>  
<property name="key" value="a23eef6dfd1514cb885f47070380ff18"/>  
<property name="cookieName" value="ENTC"/>  
<property name="tokenValiditySeconds" value="80000"/>  
</bean>

私のEcomRememberMeServices拡張& 私は&メソッドAbstractRememberMeServicesをオーバーライドしました。私の質問は、私のメソッドがどこから呼び出されるのかということです。onLoginFailonLoginSuccessonLoginSuccess()

上記の構成を実行しようとしましたが、onLoginFailが呼び出されることがわかりましたが、このフィルターのソース コードを確認したところ、またはメソッドRememberMeAuthenticationFilter(rememberMeServices.loginFail(request, response))の呼び出しが見つかりませんでした。これを明示的に呼び出す必要がありますか?onLoginSuccess()loginSuccess()

ではBasicAuthenticationFilter、このメソッドの呼び出しがあります。だから私はそれを使用しようとしましたが、それでも動作しません.( <http-basic/>). 誰でもこれで私を助けてもらえますか?

4

1 に答える 1

0

もう 1 つのメソッド logout() があり、これは logout フィルターによって呼び出されます。Login and Logout Filterにも注入する必要があると思いますrememberMeServices(xmlのhttp要素内で実行できるかどうかはわかりません):

    <bean id="logoutFilter"   class="org.springframework.security.web.authentication.logout.LogoutFilter">
    <constructor-arg index="0" type="org.springframework.security.web.authentication.logout.LogoutSuccessHandler" ref="logoutSuccessHandler" />
    <constructor-arg index="1">
        <list value-type="org.springframework.security.web.authentication.logout.LogoutHandler">
            <ref local="rememberMeServices"/>
        </list>
    </constructor-arg>
</bean>

<bean id="formLoginFilter"   class="org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter">
     ...

     <property name="rememberMeServices">
            <ref local="rememberMeServices" />
     </property> 
</bean>
于 2011-03-18T13:51:31.743 に答える