Verhinderung des Zugriffs auf Parameter Store API-Operationen - AWS Systems Manager

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.

Verhinderung des Zugriffs auf Parameter Store API-Operationen

Mithilfe von servicespezifischen Bedingungen, die von Systems Manager for AWS Identity and Access Management (IAM) -Richtlinien unterstützt werden, können Sie den Zugriff explizit zulassen oder verweigern Parameter Store API-Operationen und -Inhalte. Mithilfe dieser Bedingungen können Sie nur bestimmten IAM-Entitäten (Benutzern und Rollen) in Ihrer Organisation erlauben, bestimmte API-Aktionen aufzurufen, oder Sie können verhindern, dass bestimmte IAM-Entitäten diese ausführen. Dazu gehören Aktionen, die über den Parameter Store Konsole, die AWS Command Line Interface (AWS CLI) und SDKs.

Systems Manager unterstützt derzeit drei Bedingungen, die spezifisch sind für Parameter Store.

Verhinderung von Änderungen an vorhandenen Parametern mithilfe von ssm:Overwrite

Verwenden Sie die ssm:Overwrite-Bedingung, um zu steuern, ob IAM-Entitäten vorhandene Parameter aktualisieren können.

In der folgenden Beispielrichtlinie erteilt die "Allow" Anweisung die Erlaubnis, Parameter zu erstellen, indem der PutParameter API-Vorgang in der AWS-Konto 123456789012 in der Region USA Ost (Ohio) (us-east-2) ausgeführt wird.

Die "Deny"-Anweisung verhindert jedoch, dass Entitäten die Werte vorhandener Parameter ändern, da die Overwrite-Option für die PutParameter-Aktion ausdrücklich abgelehnt wird. Daher können Entitäten, denen diese Richtlinie zugewiesen ist, Parameter erstellen, aber keine Änderungen an vorhandenen Parametern vornehmen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/*" }, { "Effect": "Deny", "Action": [ "ssm:PutParameter" ], "Condition": { "StringEquals": { "ssm:Overwrite": [ "true" ] } }, "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/*" } ] }

Verhinderung der Erstellung oder Aktualisierung von Parametern, die eine Parameterrichtlinie verwenden, unter Verwendung von ssm:Policies

Verwenden Sie die ssm:Policies-Bedingung, um zu steuern, ob Entitäten Parameter erstellen können, die eine Parameterrichtlinie enthalten, und bestehende Parameter aktualisieren können, die eine Parameterrichtlinie enthalten.

Im folgenden Richtlinienbeispiel gewährt die "Allow" Anweisung allgemeine Berechtigungen zum Erstellen von Parametern, aber die "Deny" Anweisung verhindert, dass Entitäten Parameter erstellen oder aktualisieren, die eine Parameterrichtlinie in der AWS-Konto 123456789012 in der Region USA Ost (Ohio) (us-east-2) enthalten. Entitäten können weiterhin Parameter erstellen oder aktualisieren, denen keine Parameterrichtlinie zugewiesen ist.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/*" }, { "Effect": "Deny", "Action": [ "ssm:PutParameter" ], "Condition": { "StringEquals": { "ssm:Policies": [ "true" ] } }, "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/*" } ] }

Den Zugriff auf Ebenen in einem hierarchischen Parameter verhindern mit ssm:Recursive

Verwenden Sie die ssm:Recursive-Bedingung, um zu steuern, ob IAM-Entitäten Ebenen in einem hierarchischen Parameter anzeigen oder darauf verweisen können. Sie können den Zugriff auf alle Parameter außerhalb einer bestimmten Hierarchieebene gewähren oder einschränken.

In der folgenden Beispielrichtlinie bietet die Anweisung Zugriff auf "Allow" Parameter Store Operationen für alle Parameter im Pfad /Code/Departments/Finance/* für AWS-Konto 123456789012 in der Region USA Ost (Ohio) (us-east-2).

Danach verhindert die "Deny"-Anweisung, dass IAM-Entitäten Parameterdaten auf oder unter der Ebene von /Code/Departments/* anzeigen oder abrufen. Entitäten können jedoch weiterhin Parameter in diesem Pfad erstellen oder aktualisieren. Das Beispiel wurde erstellt, um zu verdeutlichen, dass die rekursive Verweigerung von Zugriffen unterhalb einer bestimmten Ebene in einer Parameterhierarchie Vorrang vor erlaubteren Zugriffen in derselben Richtlinie hat.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:*" ], "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/*" }, { "Effect": "Deny", "Action": [ "ssm:GetParametersByPath" ], "Condition": { "StringEquals": { "ssm:Recursive": [ "true" ] } }, "Resource": "arn:aws:ssm:us-east-2:123456789012:parameter/Code/Departments/*" } ] }
Wichtig

Wenn ein Benutzer Zugriff auf einen Pfad hat, kann er auf alle Ebenen dieses Pfads zugreifen. Wenn ein Benutzer beispielsweise die Berechtigung für den Zugriff auf den Pfad /a besitzt, dann kann er auch auf /a/b zugreifen. Dies gilt, sofern dem Benutzer nicht ausdrücklich der Zugriff auf Parameter /b in IAM verweigert wurde, wie oben dargestellt.