Verwenden Sie GetContextKeysForCustomPolicy mit einem AWS SDK oder CLI - 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.

Verwenden Sie GetContextKeysForCustomPolicy mit einem AWS SDK oder CLI

Die folgenden Codebeispiele zeigen die VerwendungGetContextKeysForCustomPolicy.

CLI
AWS CLI

Beispiel 1: Um die Kontextschlüssel aufzulisten, auf die in einer oder mehreren benutzerdefinierten JSON Richtlinien verwiesen wird, die als Parameter in der Befehlszeile bereitgestellt werden

Der folgende get-context-keys-for-custom-policy Befehl analysiert jede angegebene Richtlinie und listet die von diesen Richtlinien verwendeten Kontextschlüssel auf. Verwenden Sie diesen Befehl, um zu ermitteln, welche Kontextschlüsselwerte Sie angeben müssen, um die Richtliniensimulatorbefehle simulate-custom-policy und simulate-custom-policy erfolgreich verwenden zu können. Mit dem get-context-keys-for-custom-policy Befehl können Sie auch die Liste der Kontextschlüssel abrufen, die von allen Richtlinien verwendet werden, die einem IAM Benutzer oder einer Rolle zugeordnet sind. Parameterwerte, die mit beginnen, file:// weisen den Befehl an, die Datei zu lesen und den Inhalt anstelle des Dateinamens selbst als Wert für den Parameter zu verwenden.

aws iam get-context-keys-for-custom-policy \ --policy-input-list '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/${aws:username}","Condition":{"DateGreaterThan":{"aws:CurrentTime":"2015-08-16T12:00:00Z"}}}}'

Ausgabe:

{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }

Beispiel 2: Um die Kontextschlüssel aufzulisten, auf die in einer oder mehreren benutzerdefinierten JSON Richtlinien verwiesen wird, die als Dateieingabe bereitgestellt werden

Der folgende get-context-keys-for-custom-policy Befehl entspricht dem vorherigen Beispiel, außer dass die Richtlinien in einer Datei und nicht als Parameter bereitgestellt werden. Da der Befehl eine JSON Liste von Zeichenfolgen und keine Liste von JSON Strukturen erwartet, muss die Datei wie folgt strukturiert sein, obwohl Sie sie zu einer einzigen zusammenfassen können.

[ "Policy1", "Policy2" ]

Eine Datei, die die Richtlinie aus dem vorherigen Beispiel enthält, muss also wie folgt aussehen. Sie müssen jedem eingebetteten doppelten Anführungszeichen in der Richtlinienzeichenfolge einen umgekehrten Schrägstrich voranstellen.

[ "{\"Version\": \"2012-10-17\", \"Statement\": {\"Effect\": \"Allow\", \"Action\": \"dynamodb:*\", \"Resource\": \"arn:aws:dynamodb:us-west-2:128716708097:table/${aws:username}\", \"Condition\": {\"DateGreaterThan\": {\"aws:CurrentTime\": \"2015-08-16T12:00:00Z\"}}}}" ]

Diese Datei kann dann an den folgenden Befehl gesendet werden.

aws iam get-context-keys-for-custom-policy \ --policy-input-list file://policyfile.json

Ausgabe:

{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }

Weitere Informationen finden Sie unter Verwenden des IAM Richtliniensimulators (AWS CLIund AWS API) im AWS IAMBenutzerhandbuch.

PowerShell
Tools für PowerShell

Beispiel 1: In diesem Beispiel werden alle Kontextschlüssel abgerufen, die in der bereitgestellten Richtlinien-JSON vorhanden sind. Um mehrere Richtlinien bereitzustellen, können Sie sie als kommagetrennte Werteliste angeben.

$policy1 = '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/","Condition":{"DateGreaterThan":{"aws:CurrentTime":"2015-08-16T12:00:00Z"}}}}' $policy2 = '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/"}}' Get-IAMContextKeysForCustomPolicy -PolicyInputList $policy1,$policy2

Eine vollständige Liste der AWS SDK Entwicklerhandbücher und Codebeispiele finden Sie unter. Nutzung dieses Dienstes mit einem AWS SDK Dieses Thema enthält auch Informationen zu den ersten Schritten und Details zu früheren SDK Versionen.