Utilizzo GetContextKeysForCustomPolicy con un AWS SDK o una CLI - AWS Identity and Access Management

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à.

Utilizzo GetContextKeysForCustomPolicy con un AWS SDK o una 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ù politiche JSON 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 Puoi anche recuperare l'elenco delle chiavi di contesto utilizzate da tutte le policy associate da un utente o ruolo IAM 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ù politiche JSON personalizzate fornite come input di 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 elenco di stringhe JSON e non un elenco di strutture JSON, il file deve essere strutturato come segue, sebbene sia possibile comprimerlo in un unico file.

[ "Policy1", "Policy2" ]

Quindi, 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, consulta Using the IAM Policy Simulator (AWS CLI AWS e API) nella IAM User AWS Guide.

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

Per un elenco completo delle guide per sviluppatori AWS SDK e degli esempi di codice, consulta. Utilizzo di IAM con un AWS SDK Questo argomento include anche informazioni su come iniziare e dettagli sulle versioni precedenti dell'SDK.