Модель аутентификации / авторизации AWS для нового API machine2machine - PullRequest
0 голосов
/ 07 мая 2018

Я создаю API-интерфейс REST, который будет использоваться потребителями при оплате клиентов и вызываться непосредственно из их бэкэндов (без пользовательского интерфейса). Это соответствует типичной парадигме пользовательский ключ + секрет, предлагаемой поставщиками API, такими как Stripe. Я уже использую AWS для других продуктов, и я надеялся создать этот API, также используя облачные сервисы AWS. После прочтения сервисов аутентификации и авторизации AWS кажется, что типичная комбинация выглядит следующим образом: Cognito + API Gateway + Lambda. Моя проблема в том, что до сих пор у меня сложилось впечатление, что Cognito больше решает типичные потоки аутентификации, связанные с традиционным приложением B2C, где пользователь регистрируется, а затем аутентифицируется с помощью типовой страницы username + pwd. В моем случае я буду предоставлять своим клиентам ключ + секрет, который они могли бы использовать для вызова моего API напрямую из своего бэкэнда (на самом деле, очень похоже на то, что AWS делает со своими пользователями SDK).
Мой вопрос заключается в том, является ли AWS Cognito подходящим инструментом для такого сценария, и если да, то может ли кто-то указать мне правильное направление с точки зрения ссылок, примеров и т. Д. (Я провел много часов, пытаясь найти что-то подобное, не эквивалентное что я хочу)?
В качестве примечания я также начал изучать Auth0, который, похоже, предлагает решение для этого сценария (используя опцию, называемую клиентскими учетными данными), но я по-прежнему предпочитаю сервисы AWS, чтобы упростить интеграцию и сохранить решение как можно более простым в рамках одного и того же решения. экосистема.

Заранее спасибо за любые идеи!

...