Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use GetContextKeysForCustomPolicy
com um CLI
Os exemplos de código a seguir mostram como usar o GetContextKeysForCustomPolicy
.
- CLI
-
- AWS CLI
-
Exemplo 1: Para listar as chaves de contexto referenciadas por uma ou mais JSON políticas personalizadas fornecidas como um parâmetro na linha de comando
O comando
get-context-keys-for-custom-policy
a seguir analisa cada política fornecida e lista as chaves de contexto usadas por essas políticas. Use esse comando para identificar quais valores de chave de contexto você deve fornecer para usar com êxito os comandos do simulador de políticassimulate-custom-policy
esimulate-custom-policy
. Você também pode recuperar a lista de chaves de contexto usadas por todas as políticas associadas a um IAM usuário ou função usando oget-context-keys-for-custom-policy
comando. Os valores de parâmetro que começam comfile://
instruem o comando a ler o arquivo e usar o conteúdo como o valor do parâmetro em vez do próprio nome do arquivo.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"}}}}
'Saída:
{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }
Exemplo 2: Para listar as chaves de contexto referenciadas por uma ou mais JSON políticas personalizadas fornecidas como entrada de arquivo
O comando
get-context-keys-for-custom-policy
a seguir é igual ao exemplo anterior, exceto que as políticas são fornecidas em um arquivo e não como um parâmetro. Como o comando espera uma JSON lista de cadeias de caracteres, e não uma lista de JSON estruturas, o arquivo deve ser estruturado da seguinte forma, embora você possa reduzi-lo em uma.[ "Policy1", "Policy2" ]
Assim, por exemplo, um arquivo que contém a política do exemplo anterior deve ter a aparência a seguir. Você deve escapar cada aspas duplas incorporadas dentro da string de política precedendo-as com uma barra invertida ''.
[ "{\"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\"}}}}" ]
Esse arquivo pode então ser enviado ao comando a seguir.
aws iam get-context-keys-for-custom-policy \ --policy-input-list
file://policyfile.json
Saída:
{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }
Para obter mais informações, consulte Usando o simulador de IAM políticas (AWS CLIe AWS API) no Guia do AWS IAM usuário.
-
Para API obter detalhes, consulte GetContextKeysForCustomPolicy
na Referência de AWS CLI Comandos.
-
- PowerShell
-
- Ferramentas para PowerShell
-
Exemplo 1: este exemplo busca todas as chaves de contexto presentes no JSON da política fornecida. A fim de produzir várias políticas, você pode fornecer uma lista de valores separados por vírgula.
$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
-
Para API obter detalhes, consulte GetContextKeysForCustomPolicyem Referência de AWS Tools for PowerShell cmdlet.
-