Вызовите простое действие перед входом в систему

Я работаю с Appfuse - Spring Security,Struts и urlrewrite и пытаюсь вызвать действие перед входом в приложение (я забыл свой пароль).

Проблема в том, что я могу получить доступ только к действию, когда пользователь вошел в систему. Действие перенаправляется на страницу входа.

Я добавил шаблон <http pattern="/resetPassword/**" security="none"/> в security.xml

и следующее правило в urlrewrite.xml

<rule>
    <from>/resetPassword</from>
    <to>/resetPassword</to>
</rule>

мой security.xml

    <http pattern="/images/**" security="none"/>
<http pattern="/styles/**" security="none"/>
<http pattern="/scripts/**" security="none"/>
<http pattern="/assets/**" security="none"/>
<http pattern="/resetPassword/**" security="none"/>

<http auto-config="true">
    <intercept-url pattern="/admin/**" access="ROLE_ADMIN"/>
    <intercept-url pattern="/passwordHint*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER"/>
    <intercept-url pattern="/signup*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER"/>
    <intercept-url pattern="/saveSignup*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER"/>
    <intercept-url pattern="/**/*.action*" access="ROLE_ADMIN,ROLE_USER"/>
    <form-login login-page="/login" authentication-failure-url="/login?error=true" login-processing-url="/j_security_check" always-use-default-target = "true"/>
    <remember-me user-service-ref="userDao" key="e37f4b31-0c45-11dd-bd0b-0800200c9a66"/>
</http>

<authentication-manager>
    <authentication-provider user-service-ref="userDao">
        <password-encoder ref="passwordEncoder">
        </password-encoder>
    </authentication-provider>
</authentication-manager>

<!-- Override the default password-encoder (BCrypt) by uncommenting the following and changing the class -->
<!-- <bean id="passwordEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"/> -->

<global-method-security>
    <protect-pointcut expression="execution(* *..service.UserManager.getUsers(..))" access="ROLE_ADMIN"/>
    <protect-pointcut expression="execution(* *..service.UserManager.removeUser(..))" access="ROLE_ADMIN"/>
</global-method-security>

Чего мне не хватать?

0 ответов

Другие вопросы по тегам