регистрация API отдыха с OAuth - PullRequest
0 голосов
/ 23 января 2019

Я написал веб-приложение, которое выполняет вызовы REST API для брокера сообщений.Посредник сообщений содержит уже написанные API-интерфейсы REST, к которым можно получить данные посредника сообщений.Посредник сообщений написан так, что каждый вызов API REST отправляет имя пользователя и пароль, которые закодированы с помощью base64.Мне нужно войти в свое веб-приложение и аутентифицировать его с помощью OAuth. Кто-нибудь знает, как это сделать?Как аутентифицировать REST API с помощью OAuth?

1 Ответ

0 голосов
/ 23 января 2019

Шаг 1. Добавьте OAuth 2.0 на свой веб-сервер. Это очень стандартно с большим количеством доступных библиотек. Вы не указали поставщика удостоверений, который вы будете использовать (Google, Facebook, Auth0, Okta и т. Д.), Но у каждого поставщика есть документы и библиотеки, которые вы можете использовать на желаемом языке.

Шаг 2. Добавьте заголовок авторизации к вызовам API. Стандартный метод - добавить HTTP-заголовок Authorization: Bearer access_token при вызове API.

Шаг 3. Добавьте проверку токена OAuth в свой API. Когда ваш API получает запрос, он извлекает заголовок Authorization и проверяет токен Bearer. Как это сделать, зависит от провайдера идентификации. Например, некоторые поставщики предоставляют подписанный JWT (который вы проверяете с помощью открытого сертификата поставщика), другие предоставляют непрозрачный токен доступа (который вы проверяете, вызывая конечную точку токена поставщика). Добавьте внутреннее кэширование токенов, чтобы вам не приходилось проверять каждый вызов API.

Если вы понимаете OAuth 2.0, описанные выше шаги просты в реализации. Если у вас нет Oracle, у вас есть набор видео, которые отлично подходят для понимания OAuth.

Облачные учебники Oracle

Если желаемая реализация OAuth не требует входа пользователей в систему и является межсерверной службой, которой вы управляете на обоих концах, то вы можете использовать только часть OAuth, которая называется Signed JWT (JWS). Вы создаете структуру данных Json с нужным вам содержимым и подписываете ее закрытым ключом. Это создает токен, который вы можете использовать на предыдущих этапах. Затем вы подтвердите токен, используя ваш открытый ключ. Вы можете использовать собственные пары ключей, сгенерированные OpenSSL или аналогичными продуктами, для подписи и проверки.

...