Fehlerbehebung bei Dienststeuerungsrichtlinien (SCPs) mit AWS Organizations - 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.

Fehlerbehebung bei Dienststeuerungsrichtlinien (SCPs) mit AWS Organizations

Verwenden Sie die hier aufgeführten Informationen, um häufig auftretende Fehler in Richtlinien zur Dienststeuerung zu diagnostizieren und zu beheben (SCPs).

Richtlinien zur Dienstkontrolle (SCPs) in AWS Organizations ähneln IAM Richtlinien und haben eine gemeinsame Syntax. Diese Syntax beginnt mit den Regeln von JavaScript Object Notation (JSON). JSONbeschreibt ein Objekt mit Namens- und Wertepaaren, aus denen das Objekt besteht. Die IAMRichtliniengrammatik baut darauf auf, indem sie definiert, welche Namen und Werte eine Bedeutung haben und von ihnen verstanden werden AWS-Services die Richtlinien verwenden, um Berechtigungen zu erteilen.

AWS Organizations verwendet eine Teilmenge der IAM Syntax und Grammatik. Details hierzu finden Sie unter SCPSyntax.

Mehr als ein Richtlinienobjekt

An SCP muss aus einem und nur einem JSON Objekt bestehen. Ein Objekt wird mithilfe von {}-Klammern definiert. Sie können zwar andere Objekte innerhalb eines JSON Objekts verschachteln, indem Sie zusätzliche {} Klammern in das äußere Paar einbetten, aber eine Richtlinie kann nur ein äußerstes Paar von {} Klammern enthalten. Das folgende Beispiel ist falsch, da es zwei Objekte auf der obersten Ebene enthält (siehe red):

{ "Version": "2012-10-17", "Statement": { "Effect":"Allow", "Action":"ec2:Describe*", "Resource":"*" } } { "Statement": { "Effect": "Deny", "Action": "s3:*", "Resource": "*" } }

Mit der richtigen Schreibweise können Sie das Beispiel jedoch in eine korrekte Richtlinie umwandeln. Statt zwei vollständige Richtlinienobjekte mit jeweils eigenen Statement-Elementen zu nutzen, können Sie die beiden Blöcke in einem einzelnen Statement-Element kombinieren. Im folgenden Beispiel hat das Statement-Element zwei Objekte als Wert:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:Describe*", "Resource":" *" }, { "Effect": "Deny", "Action": "s3:*", "Resource": "*" } ] }

Dieses Beispiel kann nicht noch weiter in ein Statement mit einem Element zusammengefasst werden (die beiden Elemente haben unterschiedliche Effekte). Grundsätzlich können Sie Anweisungen nur dann kombinieren, wenn die Elemente Effect und Resource der Anweisungen identisch sind.

Mehr als ein Statement-Element

Dieser Fehler sieht möglicherweise zunächst wie eine Variante des Fehlers im vorherigen Abschnitt aus. Syntaktisch handelt es sich jedoch um einen anderen Fehler. Im folgenden Beispiel gibt es auf der obersten Ebene nur ein Richtlinienobjekt (durch die {}-Klammern definiert). Das Objekt enthält jedoch zwei Statement-Elemente.

Ein SCP darf nur ein Statement Element enthalten, das aus dem Namen (Statement) links von einem Doppelpunkt und seinem Wert rechts besteht. Der Wert eines Statement-Elements muss ein Objekt sein (durch {}-Klammern definiert). Es muss ein Effect-Element, ein Action-Element und ein Resource-Element enthalten. Das folgende Beispiel ist falsch. Es enthält zwei Statement-Elemente in der Richtlinie:

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "ec2:Describe*", "Resource": "*" }, "Statement": { "Effect": "Deny", "Action": "s3:*", "Resource": "*" } }

Da ein Wert-Objekt eine Gruppe mit mehreren Wert-Objekten sein kann, können Sie dieses Problem lösen, indem Sie die zwei Statement-Elemente in einem Element mit einer Objekt-Gruppe kombinieren:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:Describe*", "Resource":"*" }, { "Effect": "Deny", "Action": "s3:*", "Resource": "*" } ] }

Der Wert des Statement-Elements ist eine Objekt-Gruppe. Die Gruppe im Beispiel besteht aus zwei Objekten. Jedes Objekt ist ein gültiger Wert für ein Statement-Element. Die Objekte in der Gruppe werden durch Kommas getrennt.

Richtliniendokument überschreitet die maximal zulässige Größe

Die maximale Größe eines SCP Dokuments beträgt 5.120 Zeichen. Diese maximale Größe umfasst alle Zeichen einschließlich Leerzeichen. Um die Größe Ihres zu verringernSCP, können Sie alle Leerzeichen (wie Leerzeichen und Zeilenumbrüche) entfernen, die außerhalb der Anführungszeichen stehen.

Anmerkung

Wenn Sie die Richtlinie speichern, indem Sie AWS Management Console, zusätzlicher Leerraum zwischen JSON Elementen und außerhalb von Anführungszeichen wird entfernt und nicht gezählt. Wenn Sie die Richtlinie mithilfe einer SDK Operation speichern oder AWS CLI, dann wird die Richtlinie genau so gespeichert, wie Sie sie angegeben haben, und es erfolgt keine automatische Entfernung von Zeichen.