J'ai créé un rôle IAM, mais il n'apparaît pas dans la liste déroulante lorsque je lance une instance. Que puis-je faire ?

Dernière mise à jour : 23/12/2020

J'ai créé un rôle AWS Identity and Access Management (IAM), mais il n'apparaît pas dans la liste déroulante lorsque je lance une instance.

Solution

La liste déroulante comprend des profils d'instance, mais pas des rôles IAM. Cependant, vous pouvez ajouter un rôle IAM à un profil d'instance. Vous devez choisir le profil d'instance auquel le rôle IAM nécessaire est ajouté.

Suivez ces étapes pour créer un rôle IAM lié à un profil d'instance. Choisissez ensuite le profil d'instance dans la liste déroulante lorsque vous lancez votre instance. Créez un rôle IAM lié à un profil d'instance à l'aide de la console IAM ou de l'interface de ligne de commande AWS CLI.

Remarque : Si vous recevez des erreurs lors de l'exécution des commandes depuis l'interface AWS CLI, vérifiez que vous utilisez la version la plus récente de cette dernière.

Utilisation de la console IAM

Cet exemple utilise Amazon EC2 (Amazon Elastic Compute Cloud) pour montrer que si vous sélectionnez EC2 comme cas d'utilisation, une relation d'approbation est créée pour Amazon EC2. Votre cas d'utilisation EC2 crée également un profil d'instance avec le même nom que le rôle IAM et ajoute le rôle IAM au même profil d'instance. Si EC2 n'est pas sélectionné lorsque le rôle IAM est créé, aucun profil d'instance ni aucune relation d'approbation n'est créé pour Amazon EC2.

1.    Ouvrez la console IAM.

2.    Dans le volet de navigation, choisissez Rôles, puis Créer un rôle.

3.    Sélectionnez EC2 en tant que service AWS, puis EC2 en tant que cas d'utilisation, et enfin Next: Permissions (Suivant : autorisations).

4.    Sélectionnez le Nom de la stratégie correspondant à votre cas d'utilisation, puis Next: Tags (Suivant : balises) et Next: Review (Suivant : vérification).

5.    Renseignez le champ Nom du rôle, puis choisissez Créer un rôle.

Utilisation d'AWS CLI

1.    Créez un fichier nommé Test-Role-Trust-Policy.json et collez la stratégie suivante dans le fichier :
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "ec2.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
2.     Créez un rôle IAM en exécutant la commande suivante :
$ aws iam create-role --role-name Test-Role --assume-role-policy-document file://Test-Role-Trust-Policy.json
3.     Créez un profil d'instance en exécutant la commande suivante :
$ aws iam create-instance-profile --instance-profile-name Webserver
4.    Ajoutez un rôle IAM au profil d'instance en exécutant la commande suivante :
$ aws iam add-role-to-instance-profile --role-name Test-Role --instance-profile-name Webserver
Pour un rôle IAM existant pour EC2, vous devez ajouter le mandataire de service EC2 dans sa stratégie d'approbation existante. Pour en savoir plus, consultez Spécification d'un mandataire.

Remarque : Si les rôles IAM et les profils d'instance ont des noms différents, vous devez sélectionner le profil d'instance qui contient le rôle IAM nécessaire lorsque vous lancez une instance EC2. Le rôle IAM ne sera pas répertorié dans la liste déroulante.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?