SCPSyntax - AWS Organizations

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.

SCPSyntax

Service Control-Richtlinien (SCPs) verwenden eine ähnliche Syntax wie die von AWS Identity and Access Management (IAM) -Berechtigungsrichtlinien und ressourcenbasierten Richtlinien (wie Amazon S3 S3-Bucket-Richtlinien). Weitere Informationen zu IAM Richtlinien und ihrer Syntax finden Sie unter Überblick über IAM Richtlinien im IAMBenutzerhandbuch.

An SCP ist eine Klartextdatei, die nach den Regeln von JSONstrukturiert ist. Sie verwendet die Elemente, die in diesem Thema beschrieben werden.

Anmerkung

Alle Zeichen in Ihrem System werden auf die maximale Größe SCP angerechnet. Die Beispiele in dieser Anleitung zeigen die SCPs Formatierung mit zusätzlichem Leerraum, um die Lesbarkeit zu verbessern. Um Platz zu sparen, wenn sich die Größe Ihrer Richtlinie der Maximalgröße nähert, können Sie aber alle Leerraumzeichen, wie z. B. Leerzeichen und Zeilenumbrüche, außerhalb von Anführungszeichen löschen.

Allgemeine Informationen zu SCPs finden Sie unter Richtlinien zur Dienstkontrolle (SCPs).

Übersicht über die Elemente

In der folgenden Tabelle sind die Richtlinienelemente zusammengefasst, die Sie in verwenden können. SCPs Einige Richtlinienelemente sind nur in SCPs diesen Ablehnungsaktionen verfügbar. In der Spalte Unterstützte Effekte ist der Effekttyp aufgeführt, den Sie für jedes Richtlinienelement verwenden könnenSCPs.

Element Zweck Unterstützte Auswirkungen
Version Gibt die Regeln für die Sprachsyntax an, die für die Verarbeitung der Richtlinie verwendet wird.

Allow, Deny

Statement Dient als Container für Richtlinienelemente. Sie können mehrere Anweisungen enthaltenSCPs. Allow, Deny
Anweisungs-ID (SID) (Optional) Stellt einen Anzeigenamen für die Anweisung bereit. Allow, Deny
Effect (Effekt) Definiert, ob die SCP Anweisung den IAM Benutzern und Rollen in einem Konto den Zugriff gewährt oder verweigert. Allow, Deny

Action (Aktion)

Gibt den AWS Dienst und die Aktionen an, die zugelassen SCP oder verweigert werden.

Allow, Deny

NotAction

Gibt AWS Dienste und Aktionen an, die von der SCP ausgenommen sind. Wird anstelle des Elements Action verwendet.

Deny

Ressource Gibt die AWS Ressourcen an, SCP für die der gilt. Deny
Bedingung Gibt die Bedingungen dafür an, wann die Anweisung wirksam ist. Deny

Die folgenden Abschnitte enthalten weitere Informationen und Beispiele zur Verwendung von Richtlinienelementen inSCPs.

Version-Element

Jedes SCP muss ein Version Element mit dem Wert enthalten"2012-10-17". Dies ist derselbe Versionswert wie bei der neuesten Version der IAM Berechtigungsrichtlinien.

"Version": "2012-10-17",

Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONRichtlinienelemente: Version.

Statement-Element

Ein SCP besteht aus einem oder mehreren Statement Elementen. Eine Richtlinie kann nur ein Statement Schlüsselwort enthalten, der Wert kann jedoch eine JSON Reihe von Anweisungen sein (umgeben von [] -Zeichen).

Das folgende Beispiel zeigt eine einzelne Anweisung, die aus einzelnen Effect-, Action- und Resource-Elementen besteht.

"Statement": { "Effect": "Allow", "Action": "*", "Resource": "*" }

Das folgende Beispiel enthält zwei Anweisungen als Array-Liste innerhalb eines Statement-Elements. Die erste Anweisung lässt alle Aktionen zu, während die zweite jegliche EC2 Aktionen ablehnt. Das Ergebnis ist, dass ein Administrator des Kontos alle Berechtigungen außer denen von Amazon Elastic Compute Cloud (AmazonEC2) delegieren kann.

"Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" }, { "Effect": "Deny", "Action": "ec2:*", "Resource": "*" } ]

Weitere Informationen finden Sie unter IAMJSONPolicy Elements: Statement im IAMBenutzerhandbuch.

Element der Anweisungs-ID (Sid)

Die Sid (Anweisungs-ID) ist eine optionale ID, die Sie für die Richtlinie angeben können. Sie können jeder Anweisung in einem Statement-Array einen Sid-Wert zuweisen. Das folgende Beispiel SCP zeigt eine Sid Beispielaussage.

{ "Statement": { "Sid": "AllowsAllActions", "Effect": "Allow", "Action": "*", "Resource": "*" } }

Weitere Informationen finden Sie unter IAMJSONPolicy Elements: Id im IAMBenutzerhandbuch.

Effect-Element

Jede Anweisung muss ein Effect-Element enthalten. Der Wert kann entweder Allow oder Deny sein. Dieser Wert wirkt sich auf alle in derselben Anweisung aufgeführten Aktionen aus.

Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONPolicy Elements: Effect.

"Effect": "Allow"

Das folgende Beispiel zeigt eine SCP mit einer Anweisung, die ein Effect Element mit einem Wert von enthältAllow, das es Kontobenutzern ermöglicht, Aktionen für den Amazon S3 S3-Service durchzuführen. Dieses Beispiel ist in einer Organisation nützlich, die die Zulassungslistenstrategie verwendet (wo die FullAWSAccess-Standardrichtlinien alle getrennt sind, sodass Berechtigungen standardmäßig implizit verweigert werden). Das Ergebnis ist, dass die Anweisung die Amazon-S3-Berechtigungen für alle angehängten Konten erlaubt:

{ "Statement": { "Effect": "Allow", "Action": "s3:*", "Resource": "*" } }

Obwohl diese Anweisung dasselbe Allow Value-Schlüsselwort als IAM Berechtigungsrichtlinie verwendet, gewährt SCP sie einem Benutzer in keiner Weise die Erlaubnis, etwas zu tun. Sie SCPs dienen stattdessen als Filter, die die maximalen Berechtigungen für die IAM Benutzer und IAM Rollen in einer Organisation festlegen. Selbst wenn einem Benutzer des Kontos im vorherigen Beispiel die AdministratorAccess verwaltete Richtlinie zugewiesen war, werden dadurch alle Benutzer in den betroffenen Konten auf Amazon S3 S3-Aktionen SCP beschränkt.

"Effect": "Deny"

In einer Anweisung, in der das Effect Element den Wert von hatDeny, können Sie auch den Zugriff auf bestimmte Ressourcen einschränken oder Bedingungen definieren, unter SCPs denen sie gelten.

Nachfolgend sehen Sie ein Beispiel für die Verwendung eines Bedingungsschlüssel in einer Zugriffsverweigerungsanweisung.

{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringNotEquals": { "ec2:InstanceType": "t2.micro" } } } }

Diese Erklärung SCP legt eine Schutzmaßnahme fest, um zu verhindern, dass betroffene Konten (wenn sie dem SCP Konto selbst oder dem Organisationsstamm oder der Organisationseinheit zugeordnet sind, die das Konto enthält) EC2 Amazon-Instances starten, wenn die EC2 Amazon-Instance nicht darauf eingestellt ist. t2.micro Selbst wenn dem Konto eine IAM Richtlinie beigefügt ist, die diese Aktion zulässt, verhindert die von der erstellte Leitplanke dies. SCP

Elemente Action und NotAction

Jede Anweisung muss eines der folgenden Elemente enthalten:

  • In Anweisungen zum Zulassen oder Ablehnen des Zugriffs ein Action-Element.

  • Nur in Zugriffsverweigerungsanweisungen (wobei der Wert des Effect-Elements Deny lautet) ein Action oder NotAction-Element.

Der Wert für das NotAction Element Action or ist eine Liste (ein JSON Array) von Zeichenfolgen, die Aktionen identifizieren AWS-Services und Aktionen identifizieren, die durch die Anweisung zugelassen oder verweigert werden.

Jede Zeichenfolge besteht aus der Abkürzung für den Service (z. B. "s3", "ec2", "iam" oder "organizations"), in Kleinbuchstaben, gefolgt von einem Doppelpunkt und einer Aktion aus dem entsprechenden Service. Bei den Aktionen und Notaktionen wird nicht zwischen Groß- und Kleinschreibung unterschieden. In der Regel werden sie alle so eingegeben, dass alle Wörter mit einem Großbuchstaben beginnen und der Rest in Kleinbuchstaben folgt. Beispiel: "s3:ListAllMyBuckets".

Sie können auch Platzhalterzeichen wie Sternchen (*) oder Fragezeichen (?) verwenden in einem: SCP

  • Sie können auch ein Sternchen als Platzhalter verwenden, der mit mehreren Aktionen übereinstimmt, die Teile eines Namens gemeinsam haben. Der Wert "s3:*" bezeichnet alle Aktionen im Amazon-S3-Service. Der Wert "ec2:Describe*" entspricht nur den EC2 Aktionen, die mit „Describe“ beginnen.

  • Verwenden Sie das Fragezeichen (?) als Platzhalter für die Übereinstimmung mit einem einzelnen Zeichen.

Anmerkung

In einem SCP die Platzhalterzeichen (*) und (?) in einem Action NotAction Oder-Element kann es nur für sich selbst oder am Ende der Zeichenfolge verwendet werden. Er darf nicht am Anfang oder in der Mitte der Zeichenfolge stehen. Daher "servicename:action*" ist gültig, aber "servicename:*action" beide "servicename:some*action" sind ungültig inSCPs.

Eine Liste aller Dienste und der Aktionen, die sie in beiden unterstützen, AWS Organizations SCPs sowie der IAM Berechtigungsrichtlinien finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für AWS-Services in der Referenz zur Dienstautorisierung.

Weitere Informationen finden Sie unter IAMJSONRichtlinienelemente: Aktion und IAMJSONRichtlinienelemente: NotAction im IAMBenutzerhandbuch.

Beispiel für das Action-Element

Das folgende Beispiel zeigt eine Anweisung SCP mit einer Anweisung, die es Kontoadministratoren ermöglicht, Berechtigungen für EC2 Instances im Konto zu delegieren, zu beschreiben, zu starten, zu beenden und zu beenden. Dies ist ein Beispiel für eine Whitelist. Es ist hilfreich, wenn die Allow *-Standardrichtlinien nicht zugewiesen sind, sodass Berechtigungen implizit automatisch abgelehnt werden. Wenn die Allow *-Standardrichtlinie nach wie vor an den Root-Benutzer, die Organisationseinheit oder das Konto angehängt ist, an die die folgende Richtlinie angehängt ist, ist die Richtlinie wirkungslos.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeImages", "ec2:DescribeKeyPairs", "ec2:DescribeSecurityGroups", "ec2:DescribeAvailabilityZones", "ec2:RunInstances", "ec2:TerminateInstances", "ec2:StopInstances", "ec2:StartInstances" ], "Resource": "*" } }

Das folgende Beispiel zeigt, wie Sie Services, die Sie nicht in zugewiesenen Konten verwenden möchten, in eine Sperrliste aufnehmen können. Es wird davon ausgegangen, dass die "Allow *" SCPs Standardwerte weiterhin an all OUs und an das Stammverzeichnis angehängt sind. Diese Beispielrichtlinie verhindert, dass die Kontoadministratoren der angehängten Konten Berechtigungen für die IAM RDS Dienste von Amazon EC2 und Amazon delegieren. Aktionen von anderen Services können delegiert werden, solange keine Richtlinie angefügt ist, die diese abgelehnt.

{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": [ "iam:*", "ec2:*", "rds:*" ], "Resource": "*" } }

Beispiel für das NotAction-Element

Das folgende Beispiel zeigt, wie Sie ein NotAction Element verwenden können, um es AWS-Services von der Wirkung der Richtlinie auszuschließen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LimitActionsInRegion", "Effect": "Deny", "NotAction": "iam:*", "Resource": "*", "Condition": { "StringNotEquals": { "aws:RequestedRegion": "us-west-1" } } } ] }

Mit dieser Aussage können die betroffenen Konten nur Aktionen in den angegebenen Fällen ausführen, es sei denn AWS-Region, sie verwenden IAM Aktionen.

Resource-Element

In Anweisungen, in denen das Effect Element einen Wert von hatAllow, können Sie im Resource Element von nur „*“ angebenSCP. Sie können keine einzelnen Amazon-Ressourcennamen (ARNs) angeben.

Sie können auch Platzhalterzeichen wie Sternchen (*) oder ein Fragezeichen (?) im Ressourcenelement verwenden:

  • Sie können auch ein Sternchen als Platzhalter verwenden, der mit mehreren Aktionen übereinstimmt, die Teile eines Namens gemeinsam haben.

  • Verwenden Sie das Fragezeichen (?) als Platzhalter für die Übereinstimmung mit einem einzelnen Zeichen.

In Anweisungen, in denen das Effect Element den Wert „individual“ hatDeny, können Sie „individual“ angebenARNs, wie im folgenden Beispiel gezeigt.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessToAdminRole", "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/role-to-deny" ] } ] }

Dadurch SCP wird verhindert, dass IAM Benutzer und Rollen in betroffenen Konten Änderungen an einer gemeinsamen IAM Administratorrolle vornehmen, die für alle Konten in Ihrer Organisation erstellt wurde.

Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONPolicy Elements: Resource.

Condition-Element

Sie können ein Condition Element in Ablehnungsaussagen in einem angebenSCP.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOutsideEU", "Effect": "Deny", "NotAction": [ "cloudfront:*", "iam:*", "route53:*", "support:*" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:RequestedRegion": [ "eu-central-1", "eu-west-1" ] } } } ] }

Dadurch wird der Zugriff auf alle Operationen außerhalb der eu-west-1 Regionen eu-central-1 und mit Ausnahme von Aktionen in den aufgelisteten Diensten SCP verweigert.

Weitere Informationen finden Sie im IAMBenutzerhandbuch unter IAMJSONPolicy Elements: Condition.

Nicht unterstützte Elemente

Die folgenden Elemente werden in nicht unterstütztSCPs:

  • Principal

  • NotPrincipal

  • NotResource