AWS Command Line Interface
Guia do usuário

Credenciais de fornecimento com um processo externo

Atenção

O tópico a seguir discute as credenciais de fornecimento de um processo externo. Isso poderá ser um risco de segurança se o comando para gerar as credenciais se tornar acessível por processos ou usuários não aprovados. Recomendamos que você use as alternativas seguras com suporte fornecidas pela CLI e a AWS para reduzir o risco de comprometer suas credenciais. Certifique-se de proteger o arquivo config e todos os arquivos e ferramentas com suporte para impedir a divulgação.

Se você tiver um método para gerar ou procurar credenciais não compatíveis diretamente com a AWS CLI, configure a CLI para usá-lo definindo credential_process no arquivo config.

Por exemplo, você pode incluir uma entrada semelhante à seguinte no arquivo config:

[profile developer] credential_process = /opt/bin/awscreds-custom --username helen

A AWS CLI executa o comando exatamente como especificado no perfil e, depois, lê dados de STDOUT. O comando que você especificar deverá gerar a saída JSON em STDOUT que corresponda à seguinte sintaxe:

{ "Version": 1, "AccessKeyId": "an AWS access key", "SecretAccessKey": "your AWS secret access key", "SessionToken": "the AWS session token for temporary credentials", "Expiration": "ISO8601 timestamp when the credentials expire" }

No momento da elaboração deste documento, a chave Version deve ser definida como 1. Isso pode aumentar ao longo do tempo conforme a estrutura evolui.

A chave Expiration é um timestamp no formato ISO8601. Se a chave Expiration não estiver presente na ferramenta de saída, a CLI suporá que as credenciais sejam em longo prazo que não são atualizadas. Caso contrário, as credenciais serão consideradas temporárias e serão atualizadas automaticamente com a nova execução do comando credential_process antes de expirarem.

nota

A AWS CLI não armazena em cache as credenciais do processo como faz com credenciais assume-role. Se o armazenamento em cache for obrigatório, implemente-o no processo externo.

O processo externo pode retornar um código de retorno diferente de zero para indicar que ocorreu um erro ao recuperar as credenciais.