En utilisant AWS re:Post, vous acceptez les AWS re:Post Conditions d’utilisation

Comment résoudre l'erreur « Did not have IAM permissions to process tags on AWS::EC2::Instance resource » (Autorisations IAM indisponibles pour traiter les balises sur AWS። EC2። Instance resource) lorsque je crée une ressource AWS። EC2። Instance dans CloudFormation ?

Lecture de 3 minute(s)
0

J’obtiens l'erreur « Did not have IAM permissions to process tags on AWS::EC2::Instance resource » (Autorisations IAM indisponibles pour traiter les balises sur AWS። EC2። Instance resource) lorsque j'essaie de créer une ressource AWS። EC2። Instance dans AWS CloudFormation.

Brève description

Cette erreur apparaît lorsque vous créez une ressource AWS። EC2። Instance et que ce qui suit est vrai :

  • Vous spécifiez une valeur pour la propriété Tags (Balises) dans votre modèle CloudFormation.
  • L'utilisateur AWS Identity and Access Management (IAM), le rôle IAM ou le rôle de service CloudFormation ne dispose pas des autorisations EC2:CreateTags requises.

Lorsque cette erreur se produit, les balises personnalisées spécifiées à l'aide de la propriété Tags (Balises) ne sont pas appliquées à l'instance EC2 même si la ressource est marquée CREATE_COMPLETE.

Remarque : en cas d’erreurs lors de l'exécution de commandes depuis l'interface de ligne de commande AWS (AWS CLI), vérifiez que vous utilisez la version la plus récente d'AWS CLI.

Solution

1.    Vérifiez que l'utilisateur IAM, le rôle IAM ou le rôle de service CloudFormation qui crée la pile CloudFormation dispose des autorisations nécessaires pour exécuter ec2:CreateTags et ec2:DeleteTags sur vos instances EC2 affectées.

2.    Utilisez la console CloudFormation ou l'interface de ligne de commande AWS pour commenter la propriété Tags (Balises) de la ressource AWS። EC2። Instance dans votre modèle CloudFormation affecté. Mettez à jour votre pile.

Depuis la console CloudFormation :

Dans votre modèle CloudFormation, commentez la propriété Tags (Balises), puis mettez à jour votre pile. Par exemple :

Resources:
  MyEC2Instance: 
    Type: AWS::EC2::Instance
    Properties: 
#      Tags: 
#      - Key: key1
#        Value: value1
#      - Key: key2
#        Value: value2

Depuis l'interface de ligne de commande AWS :

Exécutez la commande update-stack :

aws cloudformation update-stack --region YOUR_REGION --template-body file://YOUR_TEMPLATE_FILE_TAGS_COMMENTED —stack-name YOUR_STACK_NAME

Remarque : remplacez YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_COMMENTEDet YOUR_STACK_NAME par vos valeurs.

3.    Utilisez la console CloudFormation ou l'interface de ligne de commande AWS pour supprimer les commentaires de la propriété Tags (Balises) de la ressource AWS። EC2። Instance dans votre modèle CloudFormation affecté. Ensuite, remettez à jour votre pile.

Depuis la console CloudFormation :

Dans votre modèle CloudFormation, supprimez les commentaires de la propriété Tags (Balises), puis mettez à jour votre pile. Par exemple :

Resources:
  MyEC2Instance: 
    Type: AWS::EC2::Instance
    Properties: 
      Tags: 
      - Key: key1
        Value: value1
      - Key: key2
        Value: value2

Depuis l'interface de ligne de commande AWS :

Exécutez la commande update-stack :

aws cloudformation update-stack --region YOUR_REGION --template-body file://YOUR_TEMPLATE_FILE_TAGS_UNCOMMENTED —stack-name YOUR_STACK_NAME

Remarque : remplacez YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_UNCOMMENTEDet YOUR_STACK_NAME par vos valeurs.

4.    Utilisez la console EC2 ou l'interface de ligne de commande AWS pour vérifier si vos balises sont correctement appliquées à vos instances Amazon Elastic Compute Cloud (Amazon EC2).

À l'aide de la console Amazon EC2 :

1.    Ouvrez la console Amazon EC2.

2.    Dans la section Instances du volet de navigation, choisissez Instances.

3.    Sélectionnez l'instance créée via CloudFormation.

4.    Cliquez sur l'onglet Tags (Balises), puis vérifiez si les balises personnalisées spécifiées dans votre modèle CloudFormation sont renseignées dans la table.

Depuis l'interface de ligne de commande AWS :

Exécutez la commande describe-tags :

aws ec2 describe-tags —filters "Name=resource-id,Values=YOUR_INSTANCE_ID"

Remarque : remplacez YOUR_INSTANCE_ID par l'ID d'instance de l'instance EC2 de votre pile.


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 4 ans