Создание поставщика входа OAuth 2.0 с помощью Spring Boot - PullRequest
0 голосов
/ 06 октября 2018

Эти ресурсы описывают, как использовать различные поставщики аутентификации OAuth 2.0 и OIDC 1.0 как часть входа пользователя в поток предоставления кода авторизации в Spring Boot 2.

Как бысоздать и быстро настроить такого поставщика проверки подлинности, совместимого с OAuth 2, с самого начала в Spring Boot вместо использования Okta, Google, GitHub или Вход с помощью Amazon (LWA)?

Мой пример использованияявляется навыком Alexa в качестве клиента OAuth 2.0, настроенного с помощью функции привязки учетной записи (через LWA) для возврата (не OID) токена OAuth в рамках потока кода авторизации, который затем передается в мой веб-сервис через зарегистрированный AlexaURL-адрес webhook.

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

В конечном счете, я ищу способ переопределить токен авторизации , который возвращается клиентскому приложению Alexa OAuth с пользовательским токеном, который я могу как-то внедрить в процессе генерации токена.Какие классы в стороне безопасности OAuth отвечают за генерацию токенов, и есть ли способ подключить мою собственную стратегию генерации, чтобы переопределить настройку по умолчанию?Есть ли какие-нибудь рабочие примеры кода, на которые кто-то может сослаться?

1 Ответ

0 голосов
/ 07 октября 2018

Насколько я понимаю, вы ищете возможность самостоятельно выдавать токены авторизации на основе стороннего токена авторизации.

Для этой цели я бы порекомендовал пользовательский spring-security Authorization Server.Этот сервер способен генерировать OAuth токенов самостоятельно.Возможно, возможно - с помощью некоторой конфигурации - настроить пользовательский Authorization Server так, чтобы он опирался на сторонние токены авторизации. Это руководство должно вам помочь.

Вы можете найти spring-security Authorization Server документацию здесь .

Еще одним решением будет использованиеKeycloak провайдер идентификации.Он также способен к так называемому identity brokering, что означает использование сторонних токенов и предоставление собственных токенов на его основе.Keycloak также имеет возможность авторизации.

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