Variáveis de ambiente para configurar a AWS CLI
Variáveis de ambiente fornecem outra maneira de especificar opções de configuração e credenciais e podem ser úteis para criação de scripts ou configuração temporária de um perfil nomeado como o padrão.
Precedência de opções
-
Se você especificar uma opção usando uma das variáveis de ambiente descritas nesse tópico, ela substituirá qualquer valor carregado de um perfil no arquivo de configuração.
-
Se você especificar uma opção usando um parâmetro na linha de comando da AWS CLI, ela sobrescreverá qualquer valor da variável de ambiente correspondente ou de um perfil no arquivo de configuração.
Para obter mais informações sobre precedência e como a AWS CLI determina quais credenciais usar, consulte Configurar o AWS CLI.
Como definir variáveis de ambiente
Os exemplos a seguir mostram como configurar variáveis de ambiente para o usuário padrão.
Variáveis de ambiente compatíveis da AWS CLI
A AWS CLI é compatível com as seguintes variáveis de ambiente.
AWS_ACCESS_KEY_ID
-
Especifica uma chave de acesso da AWS associada a uma conta do IAM.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
aws_access_key_id
. Você não pode especificar o ID de chave de acesso com uma opção de linha de comando. AWS_CA_BUNDLE
-
Especifica o caminho para um pacote de certificado a ser usado para a validação de certificado HTTPS.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
ca_bundle
. Você pode substituir essa variável de ambiente usando o parâmetro de linha de comando--ca-bundle
. AWS_CLI_AUTO_PROMPT
-
Habilita o prompt automático para a AWS CLI versão 2. Há duas configurações que podem ser usadas:
-
on
usa o modo de prompt automático completo cada vez que você tenta executa um comando daaws
. Isso inclui pressionar ENTER após um comando completo ou um comando incompleto.AWS_CLI_AUTO_PROMPT=on
-
on-partial
usa o modo de prompt automático parcial. Se um comando estiver incompleto ou não puder ser executado devido a erros de validação do lado do cliente, o prompt automático será usado. Esse modo é particularmente útil se você tem scripts pré-existentes, runbooks ou se deseja receber o prompt automático somente para comandos com os quais você não está familiarizado, em vez de ver o prompt para todos os comandos.AWS_CLI_AUTO_PROMPT=on-partial
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
cli_auto_prompt
. Você pode sobrescrever essa variável de ambiente usando os parâmetros de linha de comando--cli-auto-prompt
e--no-cli-auto-prompt
.Para obter informações sobre o recurso de prompt automático da AWS CLI versão 2, consulte Como fazer a AWS CLI solicitar comandos.
-
AWS_CLI_FILE_ENCODING
-
Especifica a codificação usada para arquivos de texto. Por padrão, a codificação corresponde à sua localidade. Para definir uma codificação diferente da localidade, use a variável de ambiente
aws_cli_file_encoding
. Por exemplo, se você usar o Windows com a codificação padrãoCP1252
, a configuração deaws_cli_file_encoding=UTF-8
definirá a CLI para abrir arquivos de texto usandoUTF-8
. AWS_CONFIG_FILE
-
Especifica o local do arquivo que a AWS CLI usa para armazenar perfis de configuração. O caminho padrão é
~/.aws/config
.Você não pode especificar esse valor em uma configuração de perfil nomeado nem usando um parâmetro de linha de comando.
AWS_DATA_PATH
-
Uma lista de diretórios adicionais a serem verificados fora do caminho de pesquisa interno do
~/.aws/models
ao carregar dados da AWS CLI. A definição dessa variável de ambiente indica os diretórios adicionais a serem verificados primeiro antes de voltar para os caminhos de pesquisa internos. Várias entradas devem ser separadas com o caractereos.pathsep
, que é:
no Linux ou no macOS e;
no Windows. AWS_DEFAULT_OUTPUT
-
Especifica o formato de saída a ser usado.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
output
. Você pode substituir essa variável de ambiente usando o parâmetro de linha de comando--output
. AWS_DEFAULT_REGION
-
O
Default region name
identifica a região da AWS dos servidores para os quais você deseja enviar suas solicitações por padrão. Normalmente, é a região mais próxima de você, mas pode ser qualquer região. Por exemplo, você pode digitarus-west-2
para usar a região Oeste dos EUA (Oregon). Essa é a região para a qual todas as solicitações posteriores são enviadas, a menos que você especifique o contrário em um comando individual.nota
Você deve especificar uma região da AWS ao usar a AWS CLI, explicitamente ou definindo uma região padrão. Para obter uma lista das regiões disponíveis, consulte Regiões e endpoints Os designadores de região usados pela AWS CLI têm os mesmos nomes que você vê nos URLs nos endpoints de serviço do AWS Management Console.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
region
. Você pode substituir essa variável de ambiente usando o parâmetro de linha de comando--region
e a variável de ambiente compatível com o AWS SDKAWS_REGION
. AWS_EC2_METADATA_DISABLED
-
Desabilita o uso do serviço de metadados da instância do Amazon EC2 (IMDS).
Se definido como true, as credenciais do usuário ou a configuração (como a região) não são solicitadas do IMDS.
- AWS_MAX_ATTEMPTS
-
Especifica um valor para o máximo de novas tentativas utilizadas pelo manipulador de novas tentativas da AWS CLI, onde a chamada inicial conta para o valor fornecido por você. Para obter mais informações sobre novas tentativas, consulte Novas tentativas da AWS CLI.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
max_attempts
. AWS_METADATA_SERVICE_NUM_ATTEMPTS
-
Ao tentar recuperar credenciais em uma instância do Amazon EC2 que foi configurada com uma função do IAM, a AWS CLI fará apenas uma tentativa para recuperar as credenciais do serviço de metadados da instância antes de interromper. Se souber que seus comandos serão executados em uma instância do Amazon EC2, você poderá aumentar esse valor para possibilitar que a AWS CLI faça várias tentativas antes de desistir.
AWS_METADATA_SERVICE_TIMEOUT
-
O número de segundos antes de uma conexão ao serviço de metadados da instância atingir o tempo limite. Ao tentar recuperar credenciais em uma instância do Amazon EC2 que foi configurada com uma função do IAM, por padrão uma conexão ao serviço de metadados da instância atingirá o tempo limite depois de um segundo. Se souber que está executando em uma instância do Amazon EC2 com uma função do IAM configurada, você poderá aumentar esse valor, se necessário.
- AWS_PAGER
-
Especifica o programa de paginação usado para saída. Por padrão, a AWS CLI versão 2 retorna toda a saída pelo programa de paginação padrão do sistema operacional.
Para desabilitar todos os usos de um programa de paginação externo, defina a variável como uma string vazia.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
cli_pager
. - AWS_PROFILE
-
Especifica o nome do perfil da AWS CLI com as credenciais e as opções a serem usadas. Esse pode ser o nome de um perfil armazenado em um arquivo
credentials
ouconfig
ou o valordefault
para usar o perfil padrão.Se você especificar essa variável de ambiente, ela substituirá o comportamento de usar o perfil nomeado
[default]
no arquivo de configuração. Você pode substituir essa variável de ambiente usando o parâmetro de linha de comando--profile
. AWS_REGION
-
A variável de ambiente compatível com o AWS SDK que especifica a região da AWS para a qual enviar a solicitação.
Se definida, essa variável de ambiente substituirá os valores da variável de ambiente
AWS_DEFAULT_REGION
e a configuração do perfilregion
. Você pode substituir essa variável de ambiente usando o parâmetro de linha de comando--region
. - AWS_RETRY_MODE
-
Especifica qual modo de repetição a AWS CLI utiliza. Existem três modos de repetição disponíveis: herdado (o modo usado por padrão), padrão e adaptive. Para obter mais informações sobre novas tentativas, consulte Novas tentativas da AWS CLI.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
retry_mode
. AWS_ROLE_ARN
-
Especifica o nome do recurso da Amazon (ARN) de uma função do IAM com um provedor de identidade da Web que você deseja usar para executar os comandos da AWS CLI.
Usado com as variáveis de ambiente
AWS_WEB_IDENTITY_TOKEN_FILE
eAWS_ROLE_SESSION_NAME
.Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil role_arn. Você não pode especificar um nome de sessão de função como um parâmetro de linha de comando.
nota
Essa variável de ambiente se aplica somente a uma função assumida com o provedor de identidade da Web, mas não se aplica à configuração do provedor de função assumida geral.
Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.
AWS_ROLE_SESSION_NAME
-
Especifica o nome a ser associado à sessão da função. Esse valor é fornecido ao parâmetro
RoleSessionName
quando a AWS CLI chama a operaçãoAssumeRole
e se torna parte do ARN do usuário da função assumida:arn:aws:sts::
. Esse parâmetro é opcional. Se você não fornecer esse valor, um nome de sessão será gerado automaticamente. Esse nome aparece nos logs do AWS CloudTrail para entradas associadas a essa sessão.123456789012
:assumed-role/role_name
/role_session_name
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil role_session_name.
Usado com as variáveis de ambiente
AWS_ROLE_ARN
eAWS_WEB_IDENTITY_TOKEN_FILE
.Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.
nota
Essa variável de ambiente se aplica somente a uma função assumida com o provedor de identidade da Web, mas não se aplica à configuração do provedor de função assumida geral.
AWS_SECRET_ACCESS_KEY
-
Especifica a chave secreta associada à chave de acesso. Essencialmente, essa é a “senha” para a chave de acesso.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
aws_secret_access_key
. Você não pode especificar o ID chave de acesso secreta como uma opção de linha de comando. AWS_SESSION_TOKEN
-
Especifica o valor de token de sessão que é necessário se você estiver usando credenciais de segurança temporárias recuperadas diretamente das operações do AWS STS. Para obter mais informações, consulte a Seção de saída do comando assume-role na Referência de comandos da AWS CLI.
Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
aws_session_token
. AWS_SHARED_CREDENTIALS_FILE
-
Especifica o local do arquivo que a AWS CLI usa para armazenar chaves de acesso. O caminho padrão é
~/.aws/credentials
.Você não pode especificar esse valor em uma configuração de perfil nomeado nem usando um parâmetro de linha de comando.
AWS_USE_FIPS_ENDPOINT
-
Alguns serviços da AWS oferecem endpoints compatíveis com o Federal Information Processing Standard (FIPS) 140-2
em algumas regiões. Quando o serviço da AWS é compatível, essa configuração especifica qual endpoint FIPS a AWS CLI deve usar. Ao contrário dos endpoints-padrão da AWS, os endpoints do FIPS usam uma biblioteca de software TLS compatível com o FIPS 140-2. Esses endpoints podem ser necessários por empresas que interagem com o governo dos Estados Unidos. Se definida, essa variável de ambiente substituirá o valor da configuração de perfil
use_fips_endpoint
e será substituída pela opção da linha de comando--endpoint-url
. - AWS_WEB_IDENTITY_TOKEN_FILE
-
Especifica o caminho para um arquivo que contém um token de acesso OAuth 2.0 ou token de ID OpenID Connect fornecido por um provedor de identidade. A AWS CLI carrega o conteúdo desse arquivo e o transmite como o argumento
WebIdentityToken
para a operaçãoAssumeRoleWithWebIdentity
.Usado com as variáveis de ambiente
AWS_ROLE_ARN
eAWS_ROLE_SESSION_NAME
.Se definida, essa variável de ambiente sobrescreverá o valor da configuração de perfil
web_identity_token_file
.Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.
nota
Essa variável de ambiente se aplica somente a uma função assumida com o provedor de identidade da Web, mas não se aplica à configuração do provedor de função assumida geral.