Как мы можем контролировать количество экземпляров EC2, запускаемых федеративным пользователем? - PullRequest
0 голосов
/ 11 октября 2018

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

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

Я бы не рекомендовал автоматически удалять ресурсы.Ошибка может быть фатальной для компании.

Ответ Райана хорош.Используйте лямбду, чтобы отслеживать, кому какие ресурсы принадлежат.Также используйте Lambda, чтобы автоматически пометить владельца для вновь созданных ресурсов.CloudTrail является отличным ресурсом для мониторинга и оценки того, кто что и когда делает.

Однако я бы попросил Lambda отправить электронное письмо сотруднику и его менеджеру (или соответствующей цепочке команд) о нарушении, а не о прекращении использования ресурсов.,Большинство людей быстро учатся, когда их вызывают на собрание за нарушение политики компании, что может привести к оправданному выговору или увольнению с работы.Это гораздо лучшая политика, чем попытка оправдать программную ошибку, которая привела к падению всей компании.

0 голосов
/ 17 октября 2018

Создайте лямбду, запускаемую по расписанию, для очистки вашей учетной записи и удаления всего, что не помечено правильно.

http://www.1strategy.com/blog/2016/02/23/use-aws-lambda-terminate-untagged-ec2-instances/

Если у ваших пользователей более одного тегированного экземпляра ec2сохранить самый старый.Затем сообщите своим пользователям, что любые ресурсы, которые не помечены правильно или созданы с превышением лимита, будут автоматически удалены.Большинство людей узнают, когда один экземпляр ec2 будет удален через 5 или 10 минут после его создания.

Создание лямбды, работающей по расписанию: https://medium.com/blogfoster-engineering/running-cron-jobs-on-aws-lambda-with-scheduled-events-e8fe38686e20

Вы можете получить ресурсы aws с помощьюконкретные теги, подобные этому, в вашей лямбда-функции, как показано здесь: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/ResourceGroupsTaggingAPI.html#getResources-property

var params = {
  PaginationToken: 'STRING_VALUE',
  ResourceTypeFilters: [
    'STRING_VALUE',
    /* more items */
  ],
  ResourcesPerPage: 0,
  TagFilters: [
    {
      Key: 'STRING_VALUE',
      Values: [
        'STRING_VALUE',
        /* more items */
      ]
    },
    /* more items */
  ],
  TagsPerPage: 0
};
resourcegroupstaggingapi.getResources(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Обратный вызов здесь предоставляет ресурс Arn и теги, связанные с ним.Отсюда вы можете оставить эти ресурсы живыми или удалить их.

...