Spring Boot Oauth2 использует несколько grant_types для одного URL - PullRequest
0 голосов
/ 18 мая 2018

Можно ли настроить Spring Boot для разрешения Oauth2 типов предоставления password и authorization_code для одного и того же URL-адреса.Например, /boot

Я выполнил базовую настройку авторизации, как показано ниже

security:
  oauth2:
    client:
      accessTokenUri: http://UAA/oauth/token
      userAuthorizationUri: http://UAA/oauth/authorize
      clientId: ******
      clientSecret: ******
    resource:
      userInfoUri: http://UAA/userinfo

Однако все конечные точки, защищенные этой конфигурацией, используют форму входа в систему и перенаправляют на UAA URL-адрес авторизации, даже когда запросотправлено с Authorization Bearer **** заголовком токена.Это означает, что даже когда я отправляю токен Authorization почтальону, я получаю HTTP Status 302 вместе с HTML ответом для страницы входа в UAA.

1 Ответ

0 голосов
/ 28 мая 2018

Вместо настройки в файле конфигурации вы можете настроить сервер авторизации для создания клиентов OAuth.Затем вы можете настроить клиентов с несколькими типами грантов, правами доступа, областями и т. Д. *

   @Override
        public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
            clients.inMemory().withClient("client_id").authorizedGrantTypes("password", "client_credentials")
                    .secret("secret").authorities("Authority1", "Authority2").scopes("READ", "WRITE").resourceIds("resource_server_id");
    }

Пожалуйста, проверьте Этот Spring OAuth образец для более подробной информации.

...