Spring Authorization Server: как продолжить авторизацию после входа в систему

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

      public SecurityFilterChain authorizationServerSecurityFilterChain(HttpSecurity http)
            throws Exception {
        OAuth2AuthorizationServerConfiguration.applyDefaultSecurity(http);
//...
        http
                // Redirect to the login page when not authenticated from the
                // authorization endpoint
                .exceptionHandling((exceptions) ->
                    exceptions
                         .authenticationEntryPoint(new LoginUrlAuthenticationEntryPoint("/login"));
//...
                )

Теперь, когда я пытаюсь авторизоваться (/oauth2/authorize?...) Я получил перенаправление на мою страницу входа. Если я вошел в систему до того, как увижу страницу согласия OAuth и смогу отправить согласие. Но в 99% случаев я вижу свою/loginстраницу, смог войти и застрял здесь. Как продолжить там страницу согласия? Должен ли я написать свою собственную логику для этого?

1 ответ

Сам решил проблему, удалив кастом.successHandler(...)из моей пользовательской конфигурации входа в форму. По умолчаниюSavedRequestAwareAuthenticationSuccessHandlerправильно обрабатывать все перенаправления, как и ожидалось.

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