Как получить доступ к функциям Cognito и Elasticache из одной и той же лямбда-функции AWS? - PullRequest
0 голосов
/ 03 мая 2019

Я пытаюсь написать лямбда-функцию AWS, которая получает пользователя из AWS Cognito, используя AWS.CognitoIdentityServiceProvider.adminGetUser, а затем сохраняет некоторые данные в AWS Elasticache (Redis).Части работают нормально отдельно, но не вместе, так как кажется, что когда я включаю VPC для Lambda (чтобы иметь доступ к Elasticache), я теряю доступ к Cognito (Lambda time out).

Есть ли способполучить доступ к обеим службам из одной лямбда-функции, или мой подход совершенно неверен?

1 Ответ

0 голосов
/ 03 мая 2019

Да, вы можете точно. Вам необходимо создать NAT-шлюз или экземпляр NAT в общедоступной подсети вашего VPC, а затем добавить правило в таблицу маршрутизации, которое включает NAT из группы безопасности лямбды. Я не думаю, что есть общедоступные IP-адреса Cognito, поэтому CIDR правила вашей исходящей группы безопасности будет 0.0.0.0/0.

Более подробную информацию можно найти в официальных документах здесь , а также в Интернете есть множество учебных пособий, потому что это общая проблема. Удачи!

P.S. Не забудьте добавить разрешения для действия adminGetUser к роли IAM лямбды.

...