Berechtigung zum Markieren von Ressourcen bei der Erstellung gewähren - Amazon Elastic Container Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Berechtigung zum Markieren von Ressourcen bei der Erstellung gewähren

Mit den folgenden ECS API Amazon-Aktionen zum Erstellen von Amazon-Berichten können Sie Tags beim Erstellen der Ressource angeben. Wenn in der Ressourcenerstellungsaktion Tags angegeben sind, AWS führt eine zusätzliche Autorisierung durch, um zu überprüfen, ob die richtigen Berechtigungen zum Erstellen von Tags zugewiesen sind.

  • CreateCapacityProvider

  • CreateCluster

  • CreateService

  • CreateTaskSet

  • RegisterContainerInstance

  • RegisterTaskDefinition

  • RunTask

  • StartTask

Sie können Resource-Tags verwenden, um eine attributbasierte Steuerung () zu implementieren. ABAC Weitere Informationen erhalten Sie unter Steuerung des Zugriffs auf ECS Amazon-Ressourcen mithilfe von Ressourcen-Tags und ECSAmazon-Ressourcen taggen.

Um Tags bei der Erstellung zuzulassen, erstellen oder ändern Sie eine Richtlinie, die sowohl die Berechtigungen zur Verwendung der Aktion, mit der die Ressource erstellt wird, wie z. B. ecs:CreateCluster oder ecs:RunTask und die Aktion ecs:TagResource enthält.

Das folgende Beispiel zeigt eine Richtlinie, die es Benutzern ermöglicht, während der Clustererstellung Cluster zu erstellen und Tags hinzuzufügen. Die Markierung von bestehenden Ressourcen durch die Benutzer ist nicht zulässig. (Sie können die ecs:TagResource-Aktion nicht direkt aufrufen.)

{ "Statement": [ { "Effect": "Allow", "Action": [ "ecs:CreateCluster" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ecs:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "ecs:CreateAction": [ "CreateCluster", "CreateCapacityProvider", "CreateService", "CreateTaskSet", "RegisterContainerInstance", "RegisterTaskDefinition", "RunTask", "StartTask" ] } } } ] }

Die ecs:TagResource-Aktion wird nur ausgewertet, wenn die Tags während der Aktion zur Ressourcenerstellung angewendet werden. Folglich benötigt ein Benutzer, der über die Berechtigungen zum Erstellen einer Ressource verfügt (vorausgesetzt, es bestehen keine Markierungsbedingungen), keine Berechtigungen zur Verwendung der ecs:TagResource-Aktion, wenn keine Tags in der Anforderung angegeben werden. Wenn der Benutzer allerdings versucht, eine Ressource mit Tags zu erstellen, schlägt die Anforderung fehl, wenn der Benutzer nicht über die Berechtigungen für die ecs:TagResource-Aktion verfügt.

Amazon ECS kontrolliert den Zugriff auf bestimmte Tags

Sie können zusätzliche Bedingungen im Condition -Element Ihrer IAM -Richtlinien verwenden, um die Tag-Schlüssel und -Werte zu steuern, die auf Ressourcen angewendet werden können.

Die folgenden Bedingungsschlüssel können mit den Beispielen im vorangegangenen Abschnitt verwendet werden:

  • aws:RequestTag: Gibt an, dass eine Anforderung einen bestimmten Tag-Schlüssel oder Tag-Schlüssel und -Wert enthalten muss. In der Anforderung können auch andere Tags (Markierungen) angegeben werden.

    • Zusammen mit dem StringEquals-Bedingungsoperator können Sie eine bestimmte Tag-Schlüssel- und -Wert-Kombination erzwingen, z. B. den Tag cost-center=cc123:

      "StringEquals": { "aws:RequestTag/cost-center": "cc123" }
    • In Kombination mit dem StringLike-Bedingungsoperator erzwingen Sie einen bestimmten Tag-Schlüssel in der Anforderung, beispielsweise den Tag-Schlüssel purpose:

      "StringLike": { "aws:RequestTag/purpose": "*" }
  • aws:TagKeys: Erzwingt die Tag-Schlüssel, die in der Anforderung verwendet werden.

    • Verwenden Sie diesen Bedingungsschlüssel mit dem ForAllValues-Modifikator, um bestimmte Tag-Schlüssel zu erzwingen, die in der Anforderung bereitgestellt werden (wenn in der Anforderung Tags angegeben werden, sind nur bestimmte Tags erlaubt und keine anderen Tags gestattet). Im folgenden Beispiel sind die Tag-Schlüssel environment oder cost-center erlaubt:

      "ForAllValues:StringEquals": { "aws:TagKeys": ["environment","cost-center"] }
    • Zusammen mit dem ForAnyValue-Modifikator wird erzwungen, dass die Anforderung mindestens einen der angegebenen Tag-Schlüssel umfassen muss. Zum Beispiel muss mindestens einer der Tag-Schlüssel environment und webserver in der Anforderung enthalten sein:

      "ForAnyValue:StringEquals": { "aws:TagKeys": ["environment","webserver"] }

Diese Bedingungsschlüssel können auf Aktionen zur Ressourcenerstellung, die Tagging unterstützen, sowie auf die Aktion ecs:TagResource angewendet werden. Informationen darüber, ob eine ECS API Amazon-Aktion das Tagging unterstützt, finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon ECS.

Wenn Sie erzwingen möchten, dass die Benutzer beim Erstellen einer Ressource Tags angeben, müssen Sie den aws:RequestTag-Bedingungsschlüssel oder den aws:TagKeys-Bedingungsschlüssel mit dem ForAnyValue-Modifikator für die Aktion zur Erstellung von Ressourcen verwenden. Wenn ein Benutzer für diese Aktion zur Ressourcenerstellung keine Tags angibt, wird die ecs:TagResource-Aktion nicht ausgewertet.

Bei Bedingungen gilt, dass die Groß- und Kleinschreibung für den Bedingungsschlüssel nicht berücksichtigt und für den Bedingungswert beachtet wird. Verwenden Sie aus diesem Grund den aws:TagKeys-Bedingungsschlüssel und geben Sie den Tag (Markierung)-Schlüssel als Wert dieser Bedingung an, wenn Sie die Berücksichtigung der Groß- und Kleinschreibung für einen Tag (Markierung)-Schlüssel erzwingen möchten.

Weitere Informationen zu Bedingungen mit mehreren Werten erhalten Sie unter Bedingungen mit mehreren Kontextschlüsseln oder -Werten im IAMBenutzerhandbuch.