получить электронную почту владельца для всех ресурсов AWS - PullRequest
1 голос
/ 28 октября 2019

Я пытаюсь создать сценарий с помощью boto3 и lambda, чтобы получить адрес электронной почты владельца для всех созданных ресурсов по регионам в aws (по крайней мере, EC2 для начала). Цель этого состоит в том, чтобы уведомить владельца о том, что у него столько ресурсов.

import boto3
ec2 = boto3.client('ec2')
iam = boto3.client('iam').list_users()

У iam json есть вся информация о пользователе, но нет адреса электронной почты, а у ec2 есть идентификатор владельца, но я не уверен, как это сделать. просто получите идентификатор владельца.

Если есть сторонняя служба, я тоже хочу учесть это.

1 Ответ

1 голос
/ 29 октября 2019

В AWS отсутствует понятие «владение ресурсами».

Скорее, когда пользователь выполняет вызов API (или использует консоль) для создания ресурсов, AWS подтверждает, что у него есть разрешение на создание API. вызов. Если это так, то ресурсы создаются, и ресурсы принадлежат учетной записи AWS . Нет ссылки на пользователя, который запросил ресурсы.

Сервис AWS CloudTrail ведет журнал аудита вызовов API, поэтому можно было бы изучить записи CloudTrail, чтобы узнать, какой пользовательсделал вызов API, который создал ресурс.

Некоторые люди предпочитают использовать теги , чтобы отслеживать владение или назначение ресурса. Например, используя теги для отслеживания отдела, проекта или центра затрат.

Также обратите внимание, что ресурсы могут быть созданы пользователями IAM, ролями IAM (которые предполагаются пользователями, то естьтакже отслеживается через CloudTrail) или другие сервисы AWS (например, Amazon EC2 Auto Scaling автоматически запускает экземпляры EC2). Таким образом, не всегда легко найти отношение «один к одному» между ресурсом и «человеком», который его создал.

...