Сторонние токены приложений в AppSync с пользовательскими пулами - PullRequest
1 голос
/ 10 июля 2019

после прочтения Использование нескольких типов авторизации с API-интерфейсами AWS AppSync GraphQL и Полное руководство по аутентификации пользователей с помощью Amplify Framework , что я не могу понять, еслиможет иметь сторонние токены приложений (например, как Twitter API) и использовать AppSync + Cognito для генерации учетных данных для мутаций / запросов между сервисами?

У меня уже есть поток пользователя через Cognito (тип AMAZON_COGNITO_USER_POOLS).Я хочу централизовать звонки между сервисами, используя мой AppSync.Ограничение доступа к сервису / токену также было бы неплохо (только для мутаций X вместо всей схемы).Это будет возможно?

Я немного растерялся из-за текущих ограничений.

  • нужен ли в Cognito специальный авторизатор?
  • следует ли мне переместить все в учетные данные IAM?
  • лямбда-резолвер с ручной проверкой учетных данных + вызов AppSync?
  • Я не могу этого сделать, и мне нужно хранить эти токены в другом месте (DynamoDB и т. Д.) С метаданными /какой-то идентификатор, чтобы иметь некоторую идентичность и всегда использовать лямбда-резольверы и т. д.

мысли и идеи приветствуются, спасибо!

1 Ответ

0 голосов
/ 10 июля 2019

На сегодняшний день AppSync поддерживает 4 типа аутентификации пользователей

  • ключ API (без аутентификации)
  • учетные данные IAM
  • токены OpenID
  • токены Cognito User Pool

Существует запрос на добавление пользовательских лямбда-авторизаторов , но до сих пор ничего не было объявлено.

В вашем сценарии я бы использовал аутентификацию Cognito User Pool на стороне синхронизации приложений и объединял бы пул Cognito User User с Twitter OIDC. Я знаю, что пару лет назад Twitter поддерживал только пользовательский набор Oauth2. Я позволю вам проверить, поддерживают ли они сейчас OIDC :-)

Но вы не единственный, кто задает этот вопрос

...