Come posso risolvere l'errore "Non si dispone dell’autorizzazione IAM per elaborare i tag nella risorsa AWS::EC2::Instance" quando creo una risorsa AWS::EC2::Instance in CloudFormation?

3 minuti di lettura
0

Ricevo l'errore "Non si dispone dell’autorizzazione IAM per elaborare i tag nella risorsa AWS::EC2::Instance" quando provo a creare una risorsa AWS::EC2::Instance in AWS CloudFormation.

Breve descrizione

Questo errore compare quando crei una risorsa AWS::EC2::Instance e si verifica quanto segue:

  • Specifichi un valore per la proprietà Tags nel modello di CloudFormation.
  • L'utente di AWS Identity and Access Management (IAM), il ruolo IAM o il ruolo di servizio CloudFormation non dispongono delle autorizzazioni ec2:CreateTags richieste.

Quando si verifica questo errore, i tag personalizzati specificati utilizzando la proprietà Tags non vengono applicati all'istanza EC2 anche se la risorsa è contrassegnata con CREATE_COMPLETE.

Nota: in caso di errori durante l'esecuzione dei comandi dell’interfaccia della linea di comando AWS (AWS CLI), assicurati di utilizzare la versione più recente dell'interfaccia AWS CLI.

Soluzione

1.    Verifica che l'utente IAM, il ruolo IAM o il ruolo di servizio CloudFormation che crea lo stack di CloudFormation disponga delle autorizzazioni per eseguire ec2:CreateTags e ec2:DeleteTags sulle istanze EC2 interessate.

2.    Usa la console CloudFormation o l'interfaccia AWS CLI per commentare la proprietà Tags della risorsa AWS::EC2::Instance nel modello di CloudFormation interessato. Quindi, aggiorna lo stack.

Uso della console CloudFormation:

Nel modello di CloudFormation, commenta la proprietà Tags, quindi aggiorna lo stack. Ad esempio:

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

Uso dell'interfaccia AWS CLI:

Esegui il comando update-stack:

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

Nota: Sostituisci YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_COMMENTED e YOUR_STACK_NAME con i tuoi valori.

3.    Usa la console CloudFormation o l'interfaccia AWS CLI per eliminare i commenti dalla proprietà Tags della risorsa AWS::EC2::Instance nel modello di CloudFormation interessato. Quindi, aggiorna di nuovo lo stack.

Uso della console CloudFormation:

Nel modello di CloudFormation, elimina i commenti dalla proprietà Tags, quindi aggiorna lo stack. Ad esempio:

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

Uso dell'interfaccia AWS CLI:

Esegui il comando update-stack:

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

Nota: Sostituisci YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_UNCOMMENTED e YOUR_STACK_NAME con i tuoi valori.

4.    Usa la console EC2 o l'interfaccia AWS CLI per verificare se i tag sono applicati correttamente alle istanze di Amazon Elastic Compute Cloud (Amazon EC2).

Apri la console Amazon EC2:

1.    Apri la console Amazon EC2.

2.    Dalla sezione Istanze del riquadro di navigazione, scegli Istanze.

3.    Seleziona l'istanza creata con CloudFormation.

4.    Scegli la scheda Tag, quindi controlla se i tag personalizzati specificati nel modello di CloudFormation sono compilati nella tabella.

Uso dell'interfaccia AWS CLI:

Esegui il comando describe-tags:

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

Nota: Sostituisci YOUR_INSTANCE_ID con l'ID dell'istanza EC2 dello stack.


AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa