Почему мы даем разрешения Lambda при загрузке Kinesis Stream, а не наоборот? - PullRequest
0 голосов
/ 28 июня 2019

У меня есть лямбда, которая получает данные из потока Kinesis.При назначении разрешений мы даем лямбда-роли выполнения политику доступа к потоку Kinesis.Но мы не даем Кинезису никакого разрешения на то, что он позволяет этой лямбде получить данные из него?Почему это так?

Точно так же лямбда с Dynamodb - это аналогичный случай.Но когда мы интегрируем lambda с шлюзом Api, в этом случае мы добавляем к lambda разрешение на то, что API-шлюз может вызывать его.

Я хотел понять основную концепцию разрешений и ролей IAM, которые бы определяли, какой ресурс мыдолжен дать разрешения, а какой мы не должны.Я довольно наивен, зная эти концепции IAM.Любое объяснение этой вещи было бы полезно.

1 Ответ

2 голосов
/ 28 июня 2019

Лямбда-исполняющая роль предоставляет ей разрешение на доступ к необходимым сервисам и ресурсам AWS. Лямбда примет на себя роль во время исполнения.

Именно поэтому, как вы упомянули, вы предоставляете Kinesis (или) разрешения DynamoDB, поскольку выполняете операции с этими службами в пределах лямбды

Однако разрешение, которое вы добавляете для API Gateway, является политикой на основе ресурсов, позволяющей API-шлюзу (или любой службе AWS) вызывать вашу функцию.

Ссылка: https://docs.aws.amazon.com/lambda/latest/dg/lambda-permissions.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...