Ich erhalte die Fehlermeldung „Ich hatte keine IAM-Berechtigungen zur Verarbeitung von Tags auf der Ressource AWS::EC2::Instance“, wenn ich versuche, eine Ressource AWS::EC2::Instance in AWS CloudFormation zu erstellen.
Kurzbeschreibung
Sie erhalten diesen Fehler, wenn Sie eine Ressource AWS::EC2::Instance erstellen und Folgendes zutrifft:
- In Ihrer CloudFormation-Vorlage geben Sie einen Wert für die Eigenschaft Tags an.
- Der AWS Identity and Access Management (IAM)-Benutzer, die IAM-Rolle oder die CloudFormation-Servicerolle verfügt nicht über die erforderlichen ec2:CreateTags-Berechtigungen.
Wenn dieser Fehler auftritt, werden die mit der Eigenschaft Tags angegebenen benutzerdefinierten Tags nicht auf die EC2-Instance angewendet, obwohl die Ressource mit CREATE_COMPLETE gekennzeichnet ist.
Hinweis: Wenn Sie beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehler erhalten, vergewissern Sie sich, dass Sie die neueste AWS CLI-Version verwenden.
Behebung
-
Vergewissern Sie sich, dass der IAM-Benutzer, die IAM-Rolle oder die CloudFormation-Servicerolle, die den CloudFormation-Stack erstellt, berechtigt ist, ec2:CreateTags und ec2:DeleteTags auf Ihren betroffenen EC2-Instances auszuführen.
-
Verwenden Sie die CloudFormation-Konsole oder die AWS CLI, um die Eigenschaft Tags der Ressource AWS::EC2::Instance in Ihrer betroffenen CloudFormation-Vorlage zu kommentieren. Aktualisieren Sie dann Ihren Stack.
Mithilfe der CloudFormation-Konsole:
Kommentieren Sie in Ihrer CloudFormation-Vorlage die Eigenschaft Tags und aktualisieren Sie dann Ihren Stack. Zum Beispiel:
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
# Tags:
# - Key: key1
# Value: value1
# - Key: key2
# Value: value2
Mithilfe der AWS CLI:
Führen Sie den Befehl update-stack aus:
aws cloudformation update-stack --region YOUR_REGION --template-body file://YOUR_TEMPLATE_FILE_TAGS_COMMENTED —stack-name YOUR_STACK_NAME
Hinweis: Ersetzen Sie YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_COMMENTED und YOUR_STACK_NAME durch Ihre Werte.
- Verwenden Sie die CloudFormation-Konsole oder die AWS CLI, um die Eigenschaft Tags der Ressource AWS::EC2::Instance in Ihrer betroffenen CloudFormation-Vorlage zu entkommentieren. Aktualisieren Sie dann Ihren Stack erneut.
Mithilfe der CloudFormation-Konsole:
Entfernen Sie in Ihrer CloudFormation-Vorlage die Kommentare aus der Eigenschaft Tags und aktualisieren Sie dann Ihren Stack. Zum Beispiel:
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
Tags:
- Key: key1
Value: value1
- Key: key2
Value: value2
Mithilfe der AWS CLI:
Führen Sie den Befehl update-stack aus:
aws cloudformation update-stack --region YOUR_REGION --template-body file://YOUR_TEMPLATE_FILE_TAGS_UNCOMMENTED —stack-name YOUR_STACK_NAME
Hinweis: Ersetzen Sie YOUR_REGION, YOUR_TEMPLATE_FILE_TAGS_UNCOMMENTED und YOUR_STACK_NAME durch Ihre Werte.
- Verwenden Sie die EC2-Konsole oder die AWS CLI, um zu überprüfen, ob Ihre Tags korrekt auf Ihre Amazon Elastic Compute Cloud (Amazon EC2)-Instances angewendet wurden.
Mithilfe der Amazon EC2-Konsole:
1.Öffnen Sie die Amazon EC2-Konsole.
-
Wählen Sie im Navigationsbereich im Abschnitt Instances die Option Instances aus.
-
Wählen Sie die Instance aus, die über CloudFormation erstellt wurde.
-
Wählen Sie die Registerkarte Tags und überprüfen Sie dann, ob die in Ihrer CloudFormation-Vorlage angegebenen benutzerdefinierten Tags in der Tabelle aufgefüllt sind.
Mithilfe der AWS CLI:
Führen Sie den Befehl describe-tags aus:
aws ec2 describe-tags —filters "Name=resource-id,Values=YOUR_INSTANCE_ID"
Hinweis: Ersetzen Sie YOUR_INSTANCE_ID durch die Instance-ID der EC2-Instance aus Ihrem Stack.