запомнить -меня и аутентификацию -успех -обработчик

у меня странная проблема с успешным входом в систему и перенаправлением на страницу.

ниже моя весенняя конфигурация безопасности.

<http auto-config="true" use-expressions="true">
    <intercept-url pattern="/login.hst**" access="anonymous or authenticated" />
    <intercept-url pattern="/**/*.hst" access="authenticated" />
    <form-login login-page="/login.hst"
        authentication-failure-url="/login.hst?error=true"
        authentication-success-handler-ref="loginSucessHandler" />
    <logout invalidate-session="true" logout-success-url="/home.hst"
        logout-url="/logout.hst" />
    <remember-me key="jbcpHaverERP" authentication-success-handler-ref="loginSucessHandler"/>
    <session-management>
    <concurrency-control max-sessions="1" />
</session-management>
</http>

Класс LoginSuessHandler:

@Service
public class LoginSucessHandler extends
        SavedRequestAwareAuthenticationSuccessHandler {

    @Override
    public void onAuthenticationSuccess(HttpServletRequest request,
            HttpServletResponse response, Authentication authentication)
            throws ServletException, IOException {
           ...
        super.setUseReferer(true);
        super.onAuthenticationSuccess(request, response, authentication);
    }

}

теперь проблема перенаправления на запрошенную страницу в случае успеха.если я напрямую ссылаюсь на какой-либо защищенный URL-адрес, spring перенаправляет меня на страницу входа в систему и при успешном входе в исходную запрошенную ссылку. но это не работает в случае, если пользователь ранее выбрал «запомнить -меня», а затем закрыл браузер и теперь запрашивает прямой URL-адрес, он правильно аутентифицируется, но вместо перенаправления его на запрошенную страницу spring перенаправляется на /. Я проверил журнал и некоторый исходный код Spring и обнаружил, что он не может определить целевой URL.

Я пытался установить ссылку, но значение ссылки равно нулю. но я заметил одну странную вещь: в весенней конфигурации безопасности, если я удалю обработчик аутентификации -успеха -из запомнить -мою конфигурацию, тогда он работает.

    <remember-me key="jbcpHaverERP" authentication-success-handler-ref="loginSucessHandler"/>

не в состоянии разобраться в проблеме. должна ли реализация обработчика аутентификации -успеха -отличаться для формы входа в систему и запомнить -меня?

11
задан Mansuro 26 June 2018 в 07:11
поделиться