Роли IAM очень полезны для экземпляров EC2 для доступа к другим ресурсам AWS (например, S3, SQS и т. Д.).

Вам не нужно жестко указывать учетные данные IAM в коде приложения. Вместо этого вы просто назначаете роль IAM экземпляру EC2 с необходимыми разрешениями, и ваши приложения, установленные в экземпляре EC2, будут использовать эту роль для доступа к ресурсам AWS, к которым вы хотите, чтобы они были доступны.

В этом руководстве мы назначим роль полного доступа SQS существующему экземпляру EC2 с помощью интерфейса командной строки AWS.

……………………………………………………………………………

Вот шаги высокого уровня -
1. Создайте роль IAM.
2. Присоедините политику к роли.
3. Создайте профиль экземпляра.
4. Добавьте роль в профиль экземпляра.
5. Свяжите профиль экземпляра с экземпляром EC2.

— — — — — — — — — — — — — — — — — — — — — — — — — —

Шаг 1. Создайте роль IAM

Скопируйте приведенную ниже политику и сохраните ее в файле JSON с именем Trust-Policy.json.

{ 
“Version”: “2012–10–17”, 
“Statement”: [ 
{ “Effect”: “Allow”, 
“Principal”: { “Service”: “ec2.amazonaws.com” }, 
“Action”: “sts:AssumeRole” }
 ]
 }

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

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

— — — — — — — — — — — — — — — — — — — — — — — — — —

Шаг 2. Присоедините политику к роли

Укажите политику ARN, которую вы хотите связать с ролью.
Здесь я дал политику полного доступа SQS. Измените его в соответствии с вашими требованиями.

$aws iam attach-role-policy --role-name sqsAccessRole --policy-arn arn:aws:iam::aws:policy/AmazonSQSFullAccess

Проверьте назначение политики -

$aws iam list-attached-role-policies --role-name sqsAccessRole

— — — — — — — — — — — — — — — — — — — — — — — — — —

Шаг 3. Создайте профиль экземпляра

$aws iam create-instance-profile --instance-profile-name sqsAccessInstanceProfile

— — — — — — — — — — — — — — — — — — — — — — — — — —

Шаг 4. Добавьте роль в профиль экземпляра

$aws iam add-role-to-instance-profile --role-name sqsAccessRole --instance-profile-name sqsAccessInstanceProfile

— — — — — — — — — — — — — — — — — — — — — — — — — —

Шаг 5. Свяжите профиль экземпляра с экземпляром EC2

Измените идентификатор экземпляра EC2 и выполните команду.

$aws ec2 associate-iam-instance-profile --instance-id i-0f999e6d4637 --iam-instance-profile Name=sqsAccessInstanceProfile

Выполните приведенную ниже команду, чтобы проверить статус ассоциации.

$aws ec2 describe-iam-instance-profile-associations

— — — — — — — — — — — — — — — — — — — — — — — — —

Мы успешно назначили роль доступа SQS экземпляру EC2.

Давайте войдем в EC2 и попробуем составить список всех очередей SQS.

Наслаждаться! :)

Больше контента на plainenglish.io