Как проверить подлинность сгенерированных лямбда-мутаций, когда AWS AppSync использует Cognito - PullRequest
0 голосов
/ 11 мая 2018

В настоящее время AWS AppSync может подписываться только на мутации, и это единственный способ получать обновления в реальном времени.Но если вносятся изменения в резервные данные вне AppSync (например, обновление DynamoDB из функции Lambda), то как мы можем уведомить клиентов?

Единственное решение, которое я вижу, состоит в том, чтобы создать мутацию с «локальным» распознавателем, а лямбда, которая обновляет DynamoDB, вызывает эту мутацию.Но тогда моя проблема - аутентификация AppSync, которая в моем случае установлена ​​на Cognito.

Я пытался предоставить IAM доступ к appsync:GraphQL в моей роли Lambda, но это не сработало, пока я не изменил тип аутентификации в AppSync с Cognito на IAM.Но, конечно же, аутентификация Cognito не работает для веб-клиентов.

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

1 Ответ

0 голосов
/ 12 мая 2018

Необходимо установить тип аутентификации AppSync на IAM и получить учетные данные AWS через службу федеративной идентификации Cognito, связанную с вашим пулом Cognito, с помощью правильно настроенной политики аутентифицированной идентификации. После этого вы сможете использовать эти учетные данные для доступа IAM к AppSync.

...