Аутсур Хасуры с Amazon Cognito

Мой вопрос больше связан с разработкой архитектуры webhook с помощью Amazon Cognito. Я придумал следующий дизайн после просмотра документации hasura на webhook auth. Это возможно? Примечание. AWS lambda находится за шлюзом API с включенной авторизацией.

Сейчас,

  • Не думаете ли вы, что приложение аутентифицируется, а также hasura для каждого запроса?
  • Можно ли этого достичь без лямбды между хасурой и когнито?
  • Может ли hasura предоставить аутентификацию, основанную на учетных данных пользователя, приложению и веб-крюку, чтобы проверить это в Cognito?

Спасибо за ваши отзывы.

1 ответ

У меня такой же вопрос, как и у вас. После многих испытаний, я думаю, что использование режима Hasura JWT - это хороший способ, и он хорошо работает без какой-либо сложной конфигурации. Посмотрите на этот поток:

  1. React App запросить токен от Cognito
  2. Cognito запускает PreTokenGeneration, чтобы добавить претензии Hasura
  3. Реагировать приложение получить idToken(с претензиями Хасуры) от Cognito

Я думаю, что будет гораздо лучше разделить аутентификацию и данные.

ПРИМЕЧАНИЕ. Cognito не поддерживает тип требования dict. Так что вы должны установить claims_format: 'stringified_json' в Хасуре JWT-секрет. Вы можете взглянуть на эту проблему: https://github.com/hasura/graphql-engine/issues/1176

К вашему сведению: * https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html* https://docs.hasura.io/1.0/graphql/manual/auth/jwt.html

Другие вопросы по тегам