перенаправление на исходную страницу после сбоя аутентификации с помощью Spring Security - PullRequest
8 голосов
/ 09 сентября 2010

Я использую Spring 3.0 вместе со Spring Security. Я всегда использовал следующую конфигурацию:

    <form-login login-page="/login" authentication-failure-url="/login?error=credentials" default-target-url="/account" login-processing-url="/security_check"/>

Так что, когда пользователь не входит в систему правильно, он переходит в / логин. Теперь у меня есть диалог входа на каждой странице сайта. Если они не входят в систему правильно, я не хочу, чтобы они перенаправляли на / login ... вместо этого я хочу, чтобы они возвращались на страницу, на которой они находятся. Я выведу их в тот же диалог, когда увижу в качестве параметра учетные данные error = *.

Так как мне это сделать?

1 Ответ

2 голосов
/ 09 сентября 2010
 <!-- redirect url for failure of authentication -->
 <bean id="simpleUrlAuthenticationFailureHandler" class="org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler">
        <constructor-arg value="/login.jsp?error=1"></constructor-arg>
</bean>

Я бы предложил получить доступ к объекту из контекста и сбросить URL-адрес ИЛИ написать свой собственный обработчик, который может выполнять действия, специфичные для страницы, на которой вы находитесь

http://static.springsource.org/spring-security/site/apidocs/org/springframework/security/web/authentication/SimpleUrlAuthenticationFailureHandler.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...