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 nouveau rôle IAM lié à un profil d'instance à l'aide de la console IAM ou de l'interface de la ligne de commande AWS (AWS CLI).
Remarque : si vous constatez des erreurs lors de l'exécution de commandes depuis AWS CLI, assurez-vous d'utiliser la version la plus récente d’AWS CLI.
Utilisation de la console IAM
Cet exemple utilise Amazon Elastic Compute Cloud (Amazon EC2) pour montrer que si vous sélectionnez EC2 comme cas d'utilisation, une relation d'approbation est créée pour Amazon EC2. Votre exemple d'utilisation EC2 crée également :
- Un profil d'instance.
- Donne au profil d'instance un nom identique à celui du rôle IAM.
- Ajoute le rôle IAM au même profil d'instance.
Remarque : 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 portent des noms différents, vous devez vous assurer de bien sélectionner le bon profil d’instance. Le rôle IAM requis est ajouté au bon profil d'instance lors du lancement d'une instance EC2. Le rôle IAM ne sera pas répertorié dans la liste déroulante.
Informations connexes
Modification d'un rôle
Modification de la relation d'approbation pour un rôle existant
Rôles IAM pour Amazon EC2