Как добавить роль IAM в существующий экземпляр в aws?

Я хотел бы добавить роль IAM в существующий экземпляр EC2 в AWS. Я пробовал использовать AWS CLI. Однако я не мог найти способ сделать это.

Ответ 1

Начиная с AWS CLI v1.11.46, который был выпущен только вчера (см. файл CHANGELOG на GitHub), теперь вы можете привязать роль IAM к существующему экземпляру EC2, который был первоначально запущен без роли IAM с помощью команды associate-iam-instance-profile.

Вы также можете заменить текущую прикрепленную роль IAM для работающего экземпляра, используя replace-iam-instance-profile-association.

Подробнее см. в следующей статье: Блог безопасности AWS:

Прикрепите роль AWAM IAM к существующему экземпляру EC2 Amazon с помощью AWS CLI.

UPDATE

По состоянию на 22 февраля 2017 года вы можете присоединить/заменить роль IAM на существующий экземпляр EC2 из консоли EC2. Подробнее см. этот пост в блоге.

Ответ 2

Роли должны быть назначены при первом запуске экземпляра.

Невозможно назначить роль после запуска.

Я бы рекомендовал запустить новый экземпляр с помощью команды консоли Launch More Like This. Обратите внимание, что это создаст новый загрузочный диск на основе того же AMI, поэтому любые сохраненные вами данные не будут скопированы. Если вы хотите сохранить данные, вам необходимо создать AMI из экземпляра и запустить новый экземпляр из этого AMI.

Обновление Feb 2017: Теперь можно добавить роль IAM в существующий экземпляр. Это можно сделать с помощью AWS Command Line Line Interface (CLI). Используйте команду replace-iam-instance-profile-association.

Ответ 3

если вы получаете сообщение об ошибке "Связь не является активной ассоциацией" при попытке присоединить роль к существующему экземпляру EC2, вам необходимо:

1. detach the existing role from the existing EC2 instance.
2. attach a new role to the existing EC2 instance.

как только вы это сделаете, вы сможете прикрепить роль к существующему экземпляру EC2.

Ответ 4

Хорошо, что суровая правда на данный момент. Вы не можете связать роль IAM с существующим экземпляром. Я узнал, что когда я пробовал службу System Server Manager, которая требовала, чтобы ваш экземпляр EC2 взаимодействовал с ssm api.

Думаю, нам нужно подождать еще немного времени.

Ответ 5

Эта функция была добавлена 9 февраля 2017 года. Примечание: то, что вы ищете, называется "Профиль экземпляра". Политика описывает права. Затем эта политика добавляется в профиль роли и/или экземпляра. Я не вижу заметок о том, как это сделать, поэтому добавлю в качестве ответа.

Исходный документ здесь

Ниже приведены конкретные инструкции в соответствии с рекомендациями Qaru относительно гниения ссылок.

1) Создать роль

aws iam create-role --role-name YourNewRole --assume-role-policy-document file://YourNewRole-Trust-Policy.json

2) Прикрепить политику к роли

aws iam attach-role-policy --role-name YourNewRole --policy-arn arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess

3) Создать профиль экземпляра (так называется роль при присоединении к экземпляру)

aws iam create-instance-profile --instance-profile-name YourNewRole-Instance-Profile

4) Добавить роль к профилю экземпляра

 aws iam add-role-to-instance-profile --role-name YourNewRole --instance-profile-name YourNewRole-Instance-Profile

5) Присоединить профиль экземпляра к экземпляру ec2

aws ec2 associate-iam-instance-profile --instance-id YourInstanceId --iam-instance-profile Name=YourNewRole-Instance-Profile