Utilizzare con un GetContextKeysForCustomPolicy CLI - Esempi di codice dell'AWS SDK

Ci sono altri AWS SDK esempi disponibili nel repository AWS Doc SDK Examples GitHub .

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzare con un GetContextKeysForCustomPolicy CLI

I seguenti esempi di codice mostrano come utilizzareGetContextKeysForCustomPolicy.

CLI
AWS CLI

Esempio 1: per elencare le chiavi di contesto a cui fanno riferimento una o più JSON politiche personalizzate fornite come parametro nella riga di comando

Il get-context-keys-for-custom-policy comando seguente analizza ogni politica fornita ed elenca le chiavi di contesto utilizzate da tali politiche. Utilizzate questo comando per identificare quali valori chiave di contesto è necessario fornire per utilizzare correttamente i comandi simulate-custom-policy del simulatore di politiche e. simulate-custom-policy È inoltre possibile recuperare l'elenco delle chiavi di contesto utilizzate da tutte le politiche associate da un IAM utente o da un ruolo utilizzando il get-context-keys-for-custom-policy comando. I valori dei parametri che iniziano con file:// indicano al comando di leggere il file e di utilizzare il contenuto come valore per il parametro anziché il nome del file stesso.

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"}}}}'

Output:

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

Esempio 2: elencare le chiavi di contesto a cui fanno riferimento una o più JSON politiche personalizzate fornite come input del file

Il get-context-keys-for-custom-policy comando seguente è lo stesso dell'esempio precedente, tranne per il fatto che le politiche vengono fornite in un file anziché come parametro. Poiché il comando prevede un JSON elenco di stringhe e non un elenco di JSON strutture, il file deve essere strutturato come segue, sebbene sia possibile comprimerlo in un unico file.

[ "Policy1", "Policy2" ]

Ad esempio, un file che contiene la politica dell'esempio precedente deve avere l'aspetto seguente. È necessario evitare ogni virgoletta doppia incorporata nella stringa di policy facendola precedere da una barra rovesciata».

[ "{\"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\"}}}}" ]

Questo file può quindi essere inviato al seguente comando.

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

Output:

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

Per ulteriori informazioni, vedere Using the IAM Policy Simulator (AWS CLIand AWS API) nella Guida per l'AWS IAMutente.

PowerShell
Strumenti per PowerShell

Esempio 1: Questo esempio recupera tutte le chiavi di contesto presenti nella policy JSON fornita. Per fornire più politiche è possibile fornire un elenco di valori separati da virgole.

$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