Журналы для действий на amazon s3/другие услуги AWS

Я пытаюсь понять, какой пользователь несет ответственность за изменения в S3 (на уровне ведер). Я не смог найти контрольный журнал для действий, выполненных на уровне уровня S3 или EC2, которые создали экземпляры. Beanstalk имеет журнал действий, выполненных машиной, но не какого пользователя.

Есть ли способ AWS, чтобы мы могли видеть эту информацию в IAM или в любом другом месте?

P.S: Мне не интересно знать о ведрах S3, которые предоставляют журналы доступа

Ответы

Ответ 1

Update

AWS только что объявила AWS CloudTrail, наконец, сделав аудиторские вызовы API доступными на сегодняшний день (и бесплатно), см. вводный пост AWS CloudTrail - Захват активности AWS API для деталей:

У вас есть необходимость отслеживать вызовы API для одного или нескольких AWS Счета? Если это так, новая служба AWS CloudTrail для вас.

После включения AWS CloudTrail записывает вызовы, сделанные в API AWS используя Консоль управления AWS, Интерфейс командной строки AWS (CLI), ваши собственные приложения и стороннее программное обеспечение и публикует результирующие файлы журналов в Amazon S3 по вашему выбору. CloudTrail также может выпустить уведомление по теме SNAN Amazon ваш выбор каждый раз, когда файл публикуется. Каждый вызов регистрируется в JSON формат для легкого разбора и обработки.

Обратите внимание на следующие (временные) ограничения:

  • Пока не охвачены все службы, хотя наиболее важные из них уже включены в начальную версию, и AWS планирует добавить поддержку дополнительных сервисов с течением времени.
  • Что еще более важно, не все регионы еще поддерживаются (в настоящее время только для регионов США (Северная Вирджиния) и США (Орегон)), хотя AWS будет добавлять поддержку для дополнительных регионов как быстро как можно скорее.

Исходный ответ

Это долговременный запрос функции, но, к сожалению, AWS не предоставляет (публичные) аудиторские трассы на сегодняшний день - наиболее разумным способом добавить эту функцию, вероятно, будет соответствующее расширение AWS Identity and Access Management (IAM), который является все более распространенным уровнем аутентификации и авторизации для доступа к ресурсам AWS во всех существующих (и почти наверняка будущих) Продукты и услуги.

Соответственно, есть несколько соответствующих ответов, представленных в IAM часто задаваемых вопросов в следующих строках:

Ответ 2

Текущая цена для одного CloudTrail бесплатна.

1. Включить CloudTrail

Используйте панель инструментов CloudTrail и отправьте все события в ведро S3, например. my-cloudtrail

2. Пройти через результаты

Панель управления CloudTrail позволяет выполнять некоторые беглые поиски, но если у вас много тысяч событий, это боль в использовании.

Скажем, мне нужны действия для пользователя foo_user, я просто использую инструмент CLI:

mkdir -p /tmp/cloudtrail
cd /tmp/cloudtrail
aws s3 sync s3://mc10-cloudtrail .
cd AWSLogs
zcat `find . -type f` | jq '.Records[] | "\(.eventName) \(.userIdentity.userName)"' | grep food_user | sort | uniq

Результат:

"CreateGrant foo_user"
"DescribeInstances foo_user"
"GetConsoleOutput foo_user"
"ModifyInstanceAttribute foo_user"
"StartInstances foo_user"
"StopInstances foo_user"

Примечание. События событий S3 выставляются по-разному в CloutTrail, но это несколько избыточно, потому что вы можете просто включить ведение журнала на своем ведре S3 и grep эти журналы или указать их в Logstash/Kibana.