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.
Beispiele für identitätsbasierte Richtlinien für CloudFormation
Dieser Abschnitt enthält Beispiele für identitätsbasierte Richtlinien, die zeigen, wie Berechtigungen erteilt und verweigert werden können. CloudFormation Anhand dieser Beispielrichtlinien können Sie damit beginnen, Ihre eigenen Richtlinien zu entwerfen, die dem Prinzip der geringsten Rechte entsprechen.
Eine Liste der CloudFormation spezifischen Aktionen und Bedingungen finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für AWS CloudFormation und AWS CloudFormation Bedingungen. Eine Liste der Ressourcentypen, die mit Bedingungen verwendet werden können, finden Sie in der Referenz zu AWS Ressourcen- und Eigenschaftstypen.
Dieser Abschnitt enthält die folgenden Beispielrichtlinien:
Lesezugriff zulassen
Der Lesezugriff ist die Art des Zugriffs auf mit den geringsten Rechten. CloudFormation Diese Art von Richtlinie ist möglicherweise für diejenigen IAM-Prinzipale geeignet, die alle Stacks in der einsehen möchten. CloudFormation AWS-Konto Die folgende Beispielrichtlinie gewährt Berechtigungen zum Anzeigen der Details aller CloudFormation Stacks im Konto.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources" ], "Resource": "*" } ] }
Erlaubt die Erstellung von Stacks auf der Grundlage der Vorlage
Die folgende Beispielrichtlinie ermöglicht es IAM-Prinzipalen, Stacks zu erstellen, indem sie nur die CloudFormation Vorlagen verwenden, die in einem bestimmten Amazon Simple Storage Service (Amazon S3) -Bucket gespeichert sind. Der Bucket-Name lautet. my-CFN-templates
Sie können genehmigte Vorlagen in diesen Bucket hochladen. Der cloudformation:TemplateUrl
Bedingungsschlüssel in der Richtlinie verhindert, dass der IAM-Prinzipal andere Vorlagen zum Erstellen von Stacks verwendet.
Wichtig
Erlauben Sie dem IAM-Prinzipal, schreibgeschützten Zugriff auf diesen S3-Bucket zu haben. Dadurch wird verhindert, dass der IAM-Prinzipal die genehmigten Vorlagen hinzufügt, entfernt oder ändert.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack" ], "Resource": "*", "Condition": { "StringLike": { "cloudformation:TemplateUrl": "https:// my-CFN-templates.s3.amazonaws.com/*" } } } ] }
Verweigert die Aktualisierung oder Löschung eines Stacks
Um bestimmte CloudFormation Stacks zu schützen, die geschäftskritische AWS Ressourcen bereitstellen, können Sie die Aktualisierungs- und Löschaktionen für diesen bestimmten Stack einschränken. Sie können diese Aktionen nur für einige bestimmte IAM-Prinzipale zulassen und sie für alle anderen IAM-Prinzipale in der Umgebung verweigern. In der folgenden Richtlinienerklärung werden Berechtigungen zum Aktualisieren oder Löschen eines bestimmten CloudFormation Stacks in einem bestimmten und verweigert. AWS-Region AWS-Konto
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "cloudformation:DeleteStack", "cloudformation:UpdateStack" ], "Resource": "arn:aws:cloudformation:us-east-1:123456789012:stack/MyProductionStack/
<stack_ID>
" } ] }
In dieser Richtlinienerklärung werden Berechtigungen zum Aktualisieren oder Löschen des MyProductionStack
CloudFormation Stacks verweigert, der sich im us-east-1
AWS-Region und im befindet. 123456789012
AWS-Konto Sie können die Stack-ID in der CloudFormation Konsole einsehen. Im Folgenden finden Sie einige Beispiele dafür, wie Sie das Resource
Element dieser Anweisung für Ihren Anwendungsfall ändern können:
-
Sie können dem
Resource
Element dieser Richtlinie mehrere CloudFormation Stapel IDs hinzufügen. -
Sie können
arn:aws:cloudformation:us-east-1:123456789012:stack/*
damit verhindern, dass IAM-Prinzipale alle Stacks aktualisieren oder löschen, die sich imus-east-1
AWS-Region und im123456789012
Konto befinden.
Ein wichtiger Schritt ist die Entscheidung, welche Richtlinie diese Aussage enthalten soll. Sie könnten diese Aussage zu den folgenden Richtlinien hinzufügen:
-
Die identitätsbasierte Richtlinie, die dem IAM-Prinzipal zugeordnet ist — Wenn Sie die Anweisung in diese Richtlinie aufnehmen, wird der spezifische IAM-Prinzipal daran gehindert, einen bestimmten Stack zu erstellen oder zu löschen. CloudFormation
-
Eine dem IAM-Prinzipal zugeordnete Berechtigungsgrenze — Wenn Sie die Anweisung in diese Richtlinie aufnehmen, entsteht eine Schutzbarriere für Berechtigungen. Sie verhindert, dass mehr als ein IAM-Prinzipal einen bestimmten CloudFormation Stack erstellt oder löscht, aber es schränkt nicht alle Prinzipale in Ihrer Umgebung ein.
-
Ein SCP, der einem Konto, einer Organisationseinheit oder einer Organisation zugeordnet ist — Wenn Sie die Erklärung in diese Richtlinie aufnehmen, entsteht eine Schutzbarriere für Berechtigungen. Sie verhindert, dass alle IAM-Prinzipale im Zielkonto, in der Organisationseinheit oder in der Organisation einen bestimmten Stack erstellen oder löschen. CloudFormation
Wenn Sie jedoch nicht zulassen, dass mindestens ein IAM-Prinzipal, ein privilegierter Principal, den CloudFormation Stack aktualisiert oder löscht, können Sie bei Bedarf keine Änderungen an den über diesen Stack bereitgestellten Ressourcen vornehmen. Ein Benutzer oder eine Entwicklungspipeline (empfohlen) kann diesen privilegierten Prinzipal übernehmen. Wenn Sie die Einschränkung als SCP implementieren möchten, empfehlen wir stattdessen die folgende Richtlinienerklärung.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "cloudformation:DeleteStack", "cloudformation:UpdateStack" ], "Resource": "arn:aws:cloudformation:us-east-1:123456789012:stack/MyProductionStack/
<stack_ID>
", "Condition": { "ArnNotLike": { "aws:PrincipalARN": [ "<ARN of the allowed privilege IAM principal>
" ] } } } ] }In dieser Anweisung definiert das
Condition
Element den IAM-Prinzipal, der vom SCP ausgeschlossen ist. Diese Anweisung verweigert jegliche IAM-Prinzipalberechtigungen zum Aktualisieren oder Löschen von CloudFormation Stacks, es sei denn, der ARN des IAM-Prinzipals entspricht dem ARN im Element.Condition
Deraws:PrincipalARN
Bedingungsschlüssel akzeptiert eine Liste, was bedeutet, dass Sie je nach Bedarf in Ihrer Umgebung mehr als einen IAM-Prinzipal von den Einschränkungen ausschließen können. Ein ähnliches SCP, das Änderungen an CloudFormation Ressourcen verhindert, finden Sie unter SCP-CLOUDFORMATION-1(). GitHub