Direkt zum Inhalt

Wie verwende ich SCPs und Tag-Richtlinien, damit Benutzer in den Mitgliedskonten meiner Organisation in Organizations keine Ressourcen erstellen können?

Lesedauer: 3 Minute
0

Ich möchte Service-Kontrollrichtlinien (SCPs) und Tag-Richtlinien verwenden, damit Benutzer in meinen Mitgliedskonten in AWS Organizations keine AWS-Ressourcen erstellen können.

Kurzbeschreibung

Verwende Tag-Richtlinien, um standardisierte Tags für unterstützte AWS-Ressourcen in Mitgliedskonten in deiner Organisation beizubehalten. Standardmäßig wird die Großschreibung von Tag-Schlüsseln von der übergeordneten Richtlinie übernommen. Um die Großschreibung des erzwungenen Tag-Schlüssels zu definieren, wähle Use the capitalization that you've specified above for the tag key (Großschreibung verwenden, die du oben für den Tag-Schlüssel angegeben hast). Wenn es keine übergeordnete Richtlinie gibt oder du die Großschreibung nicht aktivierst, gilt ein Tag-Schlüssel, der ausschließlich aus Kleinbuchstaben besteht, als konform.

Wenn du eine Ressource erstellst, suchen Tag-Richtlinien nach kompatiblen Tag-Schlüsseln, die dem definierten Tag-Wert und der Großschreibung entsprechen. Ein(e) Benutzer:in kann jedoch die standardisierten Tag-Schlüssel ändern und Ressourcen ohne konforme Tags erstellen. Verwende SCPs, um die Berechtigungen für die Entitäten in den Mitgliedskonten einzuschränken.

Lösung

Tag-Richtlinien verwenden, um nicht konforme Tags auf neuen oder vorhandenen Ressourcen zu verhindern

Die folgende Richtlinie ermöglicht es Benutzern, den tag_value für ihre Amazon Elastic Compute Cloud (Amazon EC2)-Instances nur in der Vorproduktion oder Produktion zu ändern:

{  
  "tags": {
    "Environment": {
      "tag_key": {
        "@@assign": "Environment"
      },
      "tag_value": {
        "@@assign": [
          "Preprod",
          "Production"
        ]
      },
      "enforced_for": {
        "@@assign": [
          "ec2:instance"
        ]
      }
    }
  }
}

In der vorherigen Richtlinie können Benutzer Dev nicht als tag_value eingeben, da die Richtlinie die Option Dev nicht definiert. Wenn die Richtlinie außerdem die Option der Großschreibung enthält, können Benutzer Umgebung nicht in umgebung ändern.

SCPs verwenden, um die Erstellung von Instance-Ressourcen ohne einen konformen Tag-Schlüssel zu stoppen

Die folgende SCP verlangt von Benutzern, dass sie einen konformen Tag-Schlüssel in die Metadaten der Instance aufnehmen, wenn sie den API-Vorgang RunInstances aufrufen. Wenn Benutzer mit dieser angefügten SCP eine Ressource mit einem konformen Tag erstellen, können die Benutzer keine Tag-Schlüsselwertpaare hinzufügen, ändern oder löschen:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "DenyUpdatingOrDeletingAnyTagOnInstanceWithAnAttachedCopliantTags",
      "Effect": "Deny",
      "Action": [
        "ec2:CreateTags",
        "ec2:DeleteTags"
      ],
      "Resource": "arn:aws:ec2:*:*:instance/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Environment": [
            "Preprod",
            "Production"
          ]
        },
        "Null": {
          "aws:ResourceTag/Environment": "false"
        }
      }
    },
    {
      "Sid": "DenyRunInstancesWithoutOneofTheCompliantTagKeys",
      "Effect": "Deny",
      "Action": [
        "ec2:RunInstances"
      ],
      "Resource": "arn:aws:ec2:*:*:instance/*",
      "Condition": {
        "Null": {
          "aws:RequestTag/Environment": "true"
        }
      }
    }
  ]
}

Hinweis: Wenn du die RunInstances-API aufrufst, stelle sicher, dass du alle erforderlichen Tags übergibst.

Ähnliche Informationen

Was ist der Unterschied zwischen einer Service-Kontrollrichtlinie von AWS Organizations und einer IAM-Richtlinie?

Syntax von Tag-Richtlinien

AWS OFFICIALAktualisiert vor einem Jahr