Наилучший подход к управлению централизованной аутентификацией / авторизацией для внутреннего множественного API? - PullRequest
0 голосов
/ 05 января 2020

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

Я обнаружил, что Oauth рекомендуется для этого типа микросервисного шаблона. Но это мои собственные API и, может быть, я переоцениваю это.

(Изображение ниже в качестве примера) Я думаю о создании моих API, централизации аутентификации / авторизации в другом и просто доступе к нему из моего API (продуманные политики CORS).

Если я нахожусь в SPA 1 и хочу перейти в SPA 2, я, возможно, найду повара ie, чтобы запросить информацию о пользователе, отправить код подтверждения на электронную почту и автоматически авторизоваться. (Последняя часть может быть выполнена с помощью Cooking в одинаковом домене ie или, может быть, 1 SPA, извлекающих данные из обоих API)

Я избегаю авторизации через OAuth и API Gateway, поскольку мне нужно будет создать свой собственный сервер и дорого ...

Это хороший подход?

my microservice pattern

Редактировать 1:"Пользователи" - это API, в котором я буду управлять всеми профилями пользователей, разрешениями, ролями и т. д. c для доступа к другому API.

1 Ответ

0 голосов
/ 06 января 2020

Вы можете использовать JSON Web Token (JWT) в вашем сценарии. Вы можете создать JWT для каждого ресурса / API и обменять их.

ВНИМАНИЕ: у JWT есть слабость, повторное использование украденного JWT может быть плохой ситуацией. Вы должны использовать JWT в сочетании с другой проверкой, поваром ie и SSL, сохранять проверку JWT в течение коротких периодов.

enter image description here

...