Wie erstelle ich Amazon EC2-Instances über CloudFormation, wenn die IAM-Richtlinie für RunInstances tagbasierte Einschränkungen enthält?

Lesedauer: 2 Minute
0

Ich möchte Amazon Elastic Compute Cloud (Amazon EC2) -Instances über AWS CloudFormation erstellen. Meine AWS-Richtlinie für Identity and Access Management (IAM) für RunInstances enthält jedoch tagbasierte Einschränkungen.

Kurzbeschreibung

Sie können eine Startvorlage verwenden, um Amazon EC2-Instances über CloudFormation zu erstellen.

Die Eigenschaft Tags der Ressource AWS::EC2::Instance erstreckt sich nicht auf die Volumes, die über CloudFormation erstellt werden. Wenn die IAM-Richtlinie, die dem Benutzer oder der Rolle zugeordnet ist, Einschränkungen für Volume-Tags enthält, wird die folgende Fehlermeldung angezeigt:

„Sie sind nicht berechtigt, diesen Vorgang durchzuführen.“

Um die Tags über CloudFormation an ec2:CreateVolume zu übergeben, müssen Sie Ihre Tags in der Ressource AWS::EC2::LaunchTemplate in Ihrer CloudFormation-Vorlage definieren.

Behebung

  1. Definieren Sie im Stapel eine Startvorlage mit den Tags, die die IAM-Richtlinie erfordert. Zum Beispiel:
RequiredTagsLaunchTemplate:
    Type: 'AWS::EC2::LaunchTemplate'
    Properties:
      LaunchTemplateData:
        TagSpecifications:
          - ResourceType: volume
            Tags:
              - Key: Env
                 Value: Dev
  1. Hängen Sie Ihre Startvorlage an Ihre EC2-Instance-Ressource an. Zum Beispiel:
Instance:
    Type: 'AWS::EC2::Instance'
    Properties:
      LaunchTemplate:
        LaunchTemplateId: !Ref RequiredTagsLaunchTemplate
        Version: 1
      InstanceType: r4.xlarge
      .
      .
  RequiredTagsLaunchTemplate:
    Type: 'AWS::EC2::LaunchTemplate'
    Properties:
      LaunchTemplateData:
        TagSpecifications:
          - ResourceType: volume
            Tags:
              - Key: Env
                Value: Dev
  1. Vergewissern Sie sich, dass Ihre Startvorlage alle erforderlichen Tags enthält.

**Wichtig:**Sie müssen bestätigen, dass die Rolle oder der Benutzer, der den Stack erstellt, über die Berechtigungen verfügt, eine Startvorlage ohne Tagging-Einschränkungen zu erstellen und zu verwenden. Sie können den Bedingungsschlüssel aws:CalledVia verwenden, um eine neue Anweisung zu erstellen, die CloudFormation-API-Aufrufe von den Tagging-Anforderungen ausnimmt.


AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr