Я унаследовал среду Amazon AWS, в которой ключ учетной записи Root широко распространен для создания резервных копий в корзины S3.
Мне нужно отследить, где используется ключ, чтобы я мог заменить его ключом с ограниченными разрешениями.
Я настроил уведомления о событиях в корзинах для отправки сообщений в SQS Q, чтобы сообщить мне, когда создаются объекты. Эти сообщения содержат IP-адрес сервера, с которого был создан объектный запрос, но не используемый ключ IAM (только идентификатор используемой учетной записи Amazon).
Cloudtrail здесь также не используется, поскольку запросы S3 не записываются в Cloudtrail.
Есть ли другой способ узнать, какой ключ используется при выполнении запросов S3?
ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ, ЧТО ЭТО НЕ ПРЕДЛАГАЕМОЕ РЕШЕНИЕ, ВООБЩЕ ОБНОВЛЕНИЕ ТО, ЧТО Я ДЕЛАЛ. ИСПОЛЬЗУЙТЕ ПРЕДЛОЖЕННЫЙ ВЫШЕ МЕТОД. Я ДОЛЖЕН ОБНОВИТЬ ВОПРОС.
#Спасибо EEAA
Я подумал об этом, но в игре есть сотни ведер, так что это было непрактично. Я надеялся, что где-то в IAM я смогу отследить использование ключей.
Учитывая, что у меня уже были настроены события и SQS, в конечном итоге я настроил события в вероятных сегментах и сопоставил метку времени события S3 с меткой времени, предоставленной меткой времени последнего использованного ключа из IAM.
Это дало мне IP-адреса серверов, которые отправляли запросы на S3 одновременно с использованием корневого ключа, из которых я смог найти корневой ключ на нескольких серверах. Надеюсь, когда я проверю корневой ключ в течение следующих нескольких дней, я больше не увижу его в использовании.
Если нет, мне, вероятно, придется настроить ведение журнала для отдельных сегментов, как вы предложили.
В дополнение к Cloudtrail вы должны включить ведение журнала для ваших корзин S3. После этого AWS начнет регистрировать канонический идентификатор пользователя используется для выполнения аутентифицированных запросов к S3.
Цитата из Документы AWS S3 по полям регистрации:
Канонический идентификатор пользователя запрашивающей стороны или строка «Анонимный» для неаутентифицированных запросов. Если запрашивающая сторона была пользователем IAM, в этом поле будет возвращено имя пользователя IAM запрашивающей стороны вместе с корневой учетной записью AWS, которой принадлежит пользователь IAM. Это тот же идентификатор, который используется для контроля доступа.