Я создал скрипт для создания учетных записей пользователей в AWS Organizations.
Теперь я пытаюсь автоматизировать удаление временных учетных записей пользователей за 30 минут?
Какие могут быть возможные решения? Я могу работать с RESTAPI, Lambda, CloudFormation.
Ручной процесс есть, но я пытаюсь предоставить пользователям своего рода внепробный доступ на 30 минут.
решение1
Вы можете вызвать Lambda с помощью журналов Cloudwatch.
Таким образом, вы можете запустить функцию AWS Lambda для удаления пользователя через 30 минут после обнаружения активности этого пользователя в журналах Cloudwatch (например, создание ресурса).
https://docs.aws.amazon.com/lambda/latest/dg/services-cloudwatchlogs.html
Если бы было невозможно идентифицировать действие пользователя в Cloudwatch, вы могли бы связать IAM -> Cloudtrail -> S3 -> Lambda для вызова процедуры удаления. Это потребовало бы немного больше усилий, поскольку ваша функция Lambda должна была бы иметь возможность читать журнал Cloudtrail и идентифицировать пользователя.
решение2
AWS не предоставляет API для закрытия учетной записи AWS.
Единственный способ закрыть учетную запись — через веб-интерфейс пользователя.
Чтобы достичь желаемого, ближе всего будет держать пул пустых аккаунтов доступным. Используйте один, когда нужно. Когда закончите, используйте API, чтобы опустошить аккаунт и вернуть его в пул.
Личный анекдот
По моему опыту, закрытие счета было еще сложнее. Чтобы закрыть счет, открытый на организацию, мне нужно было сделать следующее:
- Удалите учетную запись AWS из организации.
- Укажите номер кредитной карты для учетной записи.
- Закройте аккаунт.
Использованная литература: