IAM-JSON-Richtlinienelemente: NotAction - AWS Identitäts- und Zugriffsverwaltung

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.

IAM-JSON-Richtlinienelemente: NotAction

NotAction ist ein erweitertes Richtlinienelement, um eine explizite Übereinstimmung mit allen Aktionen herzustellen, mit Ausnahme der angegebenen Aktionsliste. Die Verwendung von NotAction kann zu einer kürzeren Richtlinie führen, da statt einer langen Liste von zugelassenen Aktionen lediglich einige wenige nicht zugelassenen Aktionen angegeben werden. Die in angegebenen Aktionen NotAction sind von der - Allow oder -DenyAuswirkung in einer Richtlinienanweisung nicht betroffen. Dies bedeutet wiederum, dass alle nicht aufgelisteten einschlägigen Aktionen und Services zugelassen sind, wenn Sie die Anweisung Allow verwenden. Außerdem werden solche nicht aufgelisteten Aktionen und Services verweigert, wenn Sie die Anweisung Deny verwenden. Wenn Sie NotAction mit dem Resource-Element verwenden, schaffen Sie Raum für die Richtlinie. Auf diese Weise AWS bestimmt , welche Aktionen oder Services anwendbar sind. Weitere Informationen finden Sie in der folgenden Beispielrichtlinie.

NotAction mit Allow

Sie können das -NotActionElement in einer Anweisung mit verwenden"Effect": "Allow", um Zugriff auf alle Aktionen in einem - AWS Service zu gewähren, mit Ausnahme der in angegebenen AktionenNotAction. Sie können sie mit dem Resource-Element verwenden, um Raum für die Richtlinie zu schaffen und die zugelassenen Aktionen auf die Aktionen zu beschränken, die für die angegebene Ressource ausgeführt werden können.

Das folgende Beispiel gestattet Benutzern den Zugriff auf die Amazon S3-Aktionen, die für jede S3-Ressource ausgeführt werden können, mit Ausnahme des Löschens eines Buckets. Dies gestattet den Benutzern nicht, die S3 API-Operation ListAllMyBuckets zu verwenden, weil für diese Aktion die Ressource "*" erforderlich ist. Diese Richtlinie lässt auch keine Aktionen in anderen Services zu, weil andere Service-Aktionen nicht auf die S3-Ressourcen anwendbar sind.

"Effect": "Allow", "NotAction": "s3:DeleteBucket", "Resource": "arn:aws:s3:::*",

Manchmal ist es sinnvoll, den Zugriff auf eine große Anzahl von Aktionen zu erlauben. Durch Verwendung des NotAction-Elements können Sie die Anweisung effektiv invertieren und so die Aktionsliste verkürzen. Da beispielsweise so viele -Services AWS hat, können Sie eine Richtlinie erstellen, die es dem Benutzer ermöglicht, alles zu tun, außer auf IAM-Aktionen zuzugreifen.

Im folgenden Beispiel können Benutzer auf jede Aktion in jedem AWS Service zugreifen, mit Ausnahme von IAM.

"Effect": "Allow", "NotAction": "iam:*", "Resource": "*"

Seien Sie vorsichtig bei der Verwendung der Elemente NotAction und "Effect": "Allow" in derselben Anweisung oder in einer anderen Anweisung innerhalb einer Richtlinie. NotAction stimmt mit allen Diensten und Aktionen überein, die nicht explizit aufgelistet oder auf die angegebene Ressource anwendbar sind und dazu führen könnten, dass Benutzer mehr Berechtigungen erhalten, als Sie beabsichtigt haben.

NotAction mit Deny

Sie können in einer Anweisung das Element NotAction mit "Effect": "Deny" verwenden, um den Zugriff auf alle aufgelisteten Ressourcen mit Ausnahme der im Element NotAction angegebenen Aktionen zu verweigern. Diese Kombination erteilt den aufgeführten Elementen keine Berechtigung, verweigert aber explizit den Zugriff auf die nicht aufgeführten Aktionen. Sie müssen unverändert die gewünschten Aktionen zulassen.

Das folgende Beispiel verweigert den Zugriff auf Nicht-IAM-Aktionen, wenn der Benutzer sich nicht mit MFA angemeldet hat. Hat sich der Benutzer mit MFA angemeldet, schlägt der "Condition"-Test fehl und die abschließende "Deny"-Anweisung hat keine Wirkung. Beachten Sie aber, dass dadurch kein Benutzerzugriff auf Aktionen gewährleistet ist. Es werden nur explizit alle anderen Aktionen als IAM-Aktionen verweigert.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "DenyAllUsersNotUsingMFA", "Effect": "Deny", "NotAction": "iam:*", "Resource": "*", "Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": "false"}} }] }

Eine Beispielrichtlinie, mit der der Zugriff auf Aktionen außerhalb bestimmter Regionen verweigert wird, mit Ausnahme von Aktionen aus bestimmten Services; siehe AWS: Verweigert den Zugriff auf AWS basierend auf der angeforderten Region.