Configurações e configurações do arquivo de credenciais no AWS CLI - AWS Command Line Interface

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

Configurações e configurações do arquivo de credenciais no AWS CLI

Você pode salvar as definições de configuração usadas com frequência e credenciais em arquivos que são mantidos pela AWS CLI.

Os arquivos são divididos em profiles. Por padrão, o AWS CLI usa as configurações encontradas no perfil chamadodefault. Para usar outras configurações, você pode criar e fazer referência a perfis adicionais.

Você pode substituir uma configuração definindo uma das variáveis de ambiente com suporte ou usando um parâmetro de linha de comando. Para obter mais informações sobre a precedência de configuração, consulte Definindo configurações para o AWS CLI.

nota

Para obter informações sobre como configurar suas credenciais, consulte Credenciais de autenticação e acesso para o AWS CLI.

Formato dos arquivos de credenciais e configuração

Os arquivos config e credentials são organizados em seções. As seções incluem perfis, sso-sessions, e serviços. Uma seção é um conjunto nomeado de configurações e continua até que outra linha de definição de seção seja encontrada. Vários perfis e seções podem ser armazenados nos arquivos config e credentials.

Esses arquivos são arquivos de texto simples que usam o seguinte formato:

  • Os nomes das seções estão entre colchetes [ ], como [default], [profile user1] e [sso-session].

  • Todas as entradas em uma seção assumem a forma geral de setting_name=value.

  • As linhas podem ser comentadas iniciando-as com um caractere de hashtag (#).

Os arquivos config e credentials contêm os seguintes tipos de seção:

Tipo de seção: profile

As AWS CLI lojas

Dependendo do arquivo, os nomes de seção de perfil usam o seguinte formato:

  • Arquivo de configuração: [default] [profile user1]

  • Arquivo de credenciais: [default] [user1]

    Não use a palavra profile ao criar uma entrada no arquivo credentials.

Cada perfil especifica credenciais diferentes e também pode especificar regiões da AWS e formatos de saída diferentes. Ao nomear o perfil em um arquivo config, inclua a palavra de prefixo “profile”, mas não a inclua no arquivo credentials.

Os exemplos a seguir mostram um arquivo credentials e config com dois perfis, região e saída especificados. O primeiro [padrão] é usado quando você executa um comando da AWS CLI sem perfil especificado. O segundo é usado quando você executa um AWS CLI comando com o --profile user1 parâmetro.

IAM Identity Center (SSO)

Este exemplo é para AWS IAM Identity Center. Para obter mais informações, consulte Configurando a autenticação do IAM Identity Center com o AWS CLI.

Arquivo de credenciais

O arquivo credentials não é usado para esse método de autenticação.

Arquivo de configuração

[default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_session = my-sso sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access
IAM Identity Center (Legacy SSO)

Este exemplo é para o método legado de AWS IAM Identity Center. Para obter mais informações, consulte Configurando a autenticação do IAM Identity Center com o AWS CLI.

Arquivo de credenciais

O arquivo credentials não é usado para esse método de autenticação.

Arquivo de configuração

[default] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json
Short-term credentials

Este exemplo é para as credenciais de curto prazo do AWS Identity and Access Management. Para obter mais informações, consulte Autenticação com credenciais de curto prazo para o AWS CLI.

Arquivo de credenciais

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [user1] aws_access_key_id=ASIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY aws_session_token = fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

Arquivo de configuração

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text
IAM role

Este exemplo é para assumir uma IAM função. Perfis que usam IAM funções obtêm credenciais de outro perfil e, em seguida, aplicam permissões de IAM função. Nos exemplos a seguir, default é o perfil de origem das credenciais, e user1 empresta as mesmas credenciais e assume um novo perfil. Para obter mais informações, consulte Usando uma IAM função no AWS CLI.

Arquivo de credenciais

O arquivo credentials depende da autenticação que o perfil de origem usa. No exemplo a seguir, o perfil de origem usa credenciais de curto prazo.

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

Arquivo de configuração

[default] region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role source_profile=default role_session_name=session_user1 region=us-east-1 output=text
Amazon EC2 instance metadata credentials

Este exemplo é para as credenciais obtidas dos metadados da EC2 instância de hospedagem da Amazon. Para obter mais informações, consulte Usando metadados de EC2 instâncias da Amazon como credenciais no AWS CLI.

Arquivo de credenciais

O arquivo credentials não é usado para esse método de autenticação.

Arquivo de configuração

[default] role_arn=arn:aws:iam::123456789012:role/defaultrole credential_source=Ec2InstanceMetadata region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role credential_source=Ec2InstanceMetadata region=us-east-1 output=text
Long-term credentials
Atenção

Para evitar riscos de segurança, não use IAM usuários para autenticação ao desenvolver software específico ou trabalhar com dados reais. Em vez disso, use federação com um provedor de identidade, como AWS IAM Identity Center.

Este exemplo é para as credenciais de longo prazo do AWS Identity and Access Management. Para obter mais informações, consulte Autenticação usando credenciais de IAM usuário para o AWS CLI.

Arquivo de credenciais

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user1] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

Arquivo de configuração

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text

Para obter mais informações e métodos adicionais de autorização e credencial, consulte Autenticação usando credenciais de IAM usuário para o AWS CLI.

Tipo de seção: sso-session

A sso-session seção do config arquivo é usada para agrupar variáveis de configuração para adquirir tokens de SSO acesso, que podem então ser usados para adquirir AWS credenciais. As seguintes configurações são usadas:

Defina uma seção de sso-session e associe-a a um perfil. sso_region e sso_start_url devem ser definidos na seção sso-session. Normalmente, sso_account_id e sso_role_name deve ser definido na profile seção para que eles SDK possam solicitar SSO credenciais.

O exemplo a seguir configura as SSO credenciais SDK para solicitar e oferece suporte à atualização automática de tokens:

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start

Isso também permite que as configurações de sso-session sejam reutilizadas em vários perfis:

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [profile prod] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole2 [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start

No entanto, sso_account_id sso_role_name não são obrigatórios para todos os cenários de configuração de SSO token. Se a aplicação usa apenas serviços da AWS compatíveis com a autenticação do portador, as credenciais tradicionais da AWS não são necessárias. A autenticação do portador é um esquema de HTTP autenticação que usa tokens de segurança chamados tokens do portador. Nesse cenário, sso_account_id e sso_role_name não são obrigatórios. Consulte o guia individual do seu AWS serviço para determinar se ele suporta a autorização do token do portador.

Além disso, os escopos de registro podem ser configurados como parte de uma sso-session. O escopo é um mecanismo na OAuth versão 2.0 para limitar o acesso de um aplicativo à conta de um usuário. Uma aplicação pode solicitar um ou mais escopos, e o token de acesso emitido para a aplicação será limitado aos escopos concedidos. Esses escopos definem as permissões solicitadas para serem autorizadas para o OIDC cliente registrado e os tokens de acesso recuperados pelo cliente. O exemplo a seguir define sso_registration_scopes para fornecer acesso a fim de listar contas/perfis:

[sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

O token de autenticação é armazenado em cache no disco sob o diretório ~/.aws/sso/cache com um nome de arquivo baseado no nome da sessão.

Para obter mais informações sobre esse tipo de configuração, consulte Configurando a autenticação do IAM Identity Center com o AWS CLI.

Tipo de seção: services

A services seção é um grupo de configurações que configura endpoints personalizados para AWS service (Serviço da AWS) solicitações. Depois, um perfil é vinculado a uma seção services.

[profile dev] services = my-services

A seção services é separada em subseções por linhas <SERVICE> = , onde <SERVICE> é a chave de identificação do AWS service (Serviço da AWS) . O AWS service (Serviço da AWS) identificador é baseado no API modelo, substituindo todos os espaços serviceId por sublinhados e colocando todas as letras em minúsculas. Para obter uma lista de todas as chaves de identificação de serviço a serem usadas na seção services, consulte Usando endpoints no AWS CLI. A chave de identificação de serviço é seguida por configurações aninhadas, cada uma em sua própria linha e recuada por dois espaços.

O exemplo a seguir configura o endpoint a ser usado para solicitações feitas ao Amazon DynamoDB serviço no my-services seção que é usada no dev perfil. Todas as linhas imediatamente seguintes que estejam recuadas são incluídas nessa subseção e se aplicam a esse serviço.

[profile dev] services = my-services [services my-services] dynamodb = endpoint_url = http://localhost:8000

Para obter mais informações sobre endpoints específicos de serviço, consulte Usando endpoints no AWS CLI.

Se seu perfil tiver credenciais baseadas em função configuradas por meio de um source_profile parâmetro para IAM assumir a funcionalidade de função, ele usará SDK somente configurações de serviço para o perfil especificado. Ele não usa perfis com funções vinculadas a ele. Por exemplo, usando o seguinte arquivo compartilhado config:

[profile A] credential_source = Ec2InstanceMetadata endpoint_url = https://profile-a-endpoint.aws/ [profile B] source_profile = A role_arn = arn:aws:iam::123456789012:role/roleB services = profileB [services profileB] ec2 = endpoint_url = https://profile-b-ec2-endpoint.aws

Se você usar o perfil B e fizer uma chamada em seu código para a AmazonEC2, o endpoint será resolvido como. https://profile-b-ec2-endpoint.aws Se o seu código fizer uma solicitação para qualquer outro serviço, a resolução do endpoint não seguirá nenhuma lógica personalizada. O endpoint não é resolvido para o endpoint global definido no perfil A. Para que um endpoint global tenha efeito para o perfil B, você precisaria configurar endpoint_url diretamente no perfil B.

Onde as definições de configuração ficam armazenadas?

Ele AWS CLI armazena informações confidenciais de credenciais que você especifica aws configure em um arquivo local chamadocredentials, em uma pasta nomeada .aws em seu diretório inicial. As opções menos confidenciais de configuração especificadas com aws configure são armazenadas em um arquivo local chamado config, também armazenado na pasta .aws, no seu diretório inicial.

Armazenar credenciais no arquivo de configuração

Você pode manter todas as configurações do seu perfil em um único arquivo, pois eles AWS CLI podem ler as credenciais do config arquivo. Se houver credenciais nos dois arquivos para um perfil que compartilhe o mesmo nome, as chaves no arquivo de credenciais terão precedência. Sugerimos manter as credenciais nos arquivos credentials. Esses arquivos também são usados pelos kits de desenvolvimento de software de vários idiomas (SDKs). Se você usar um dos SDKs além do AWS CLI, confirme se as credenciais devem ser armazenadas em seu próprio arquivo.

O local do diretório inicial varia de acordo com o sistema operacional, mas é acessado usando as variáveis de ambiente %UserProfile% no Windows e $HOME ou ~ (til) em sistemas baseados em Unix. Você pode especificar um local não padrão para os arquivos configurando as variáveis de ambiente AWS_CONFIG_FILE e AWS_SHARED_CREDENTIALS_FILE para outro caminho local. Para mais detalhes, consulte Configurando variáveis de ambiente para o AWS CLI.

Quando você usa um perfil compartilhado que especifica uma função AWS Identity and Access Management (IAM), ele AWS CLI chama a AWS STS AssumeRole operação para recuperar credenciais temporárias. Essas credenciais são armazenadas (no ~/.aws/cli/cache). AWS CLI Os comandos subsequentes usam as credenciais temporárias em cache até que elas expirem e, nesse ponto, atualizam AWS CLI automaticamente as credenciais.

Usar perfis nomeados

Se nenhum perfil for definido explicitamente, será usado o perfil default.

Para usar um perfil designado, adicione a opção --profile profile-name para o comando. O exemplo a seguir lista todas as suas EC2 instâncias da Amazon usando as credenciais e configurações definidas no user1 perfil.

$ aws ec2 describe-instances --profile user1

Para usar um perfil designado para vários comandos, evite especificar o perfil ao configurar o comando em cada variável de ambiente AWS_PROFILE como o perfil padrão. É possível substituir essa configuração usando o parâmetro --profile.

Linux or macOS
$ export AWS_PROFILE=user1
Windows
C:\> setx AWS_PROFILE user1

O uso de set para definir uma variável de ambiente altera o valor usado até o final da sessão de prompt de comando atual ou até que você defina a variável como um valor diferente.

Usar setx para definir uma variável de ambiente altera o valor em todos os shells de comando criados depois de executar o comando. Isso não afeta nenhum shell de comando que já esteja em execução no momento em que você executa o comando. Feche e reinicie o shell de comando para ver os efeitos da alteração.

Configurar a variável de ambiente altera o perfil padrão até o final do seu shell sessão ou até que você defina a variável a um valor diferente. Você pode tornar as variáveis de ambiente persistentes em sessões futuras colocando-as no script de inicialização do shell. Para obter mais informações, consulte Configurando variáveis de ambiente para o AWS CLI.

Definir e visualizar as configurações usando comandos

Existem várias formas de visualizar e definir as configurações usando comandos.

aws configure

Execute esse comando para definir e visualizar rapidamente as credenciais do , a região e o formato de saída. O exemplo a seguir mostra valores de exemplo.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json
aws configure set

Você pode definir quaisquer credenciais ou configurações usando aws configure set. Especifique o perfil que você deseja visualizar ou modificar com a configuração --profile.

Por exemplo, o comando a seguir define a region no perfil chamado integ.

$ aws configure set region us-west-2 --profile integ

Para remover uma configuração, exclua manualmente a configuração em seus credentials arquivos config e em um editor de texto.

aws configure get

Você pode recuperar quaisquer credenciais ou configurações definidas usando aws configure get. Especifique o perfil que você deseja visualizar ou modificar com a configuração --profile.

Por exemplo, o comando a seguir recupera a configuração region no perfil chamado integ.

$ aws configure get region --profile integ us-west-2

Se a saída estiver vazia, a configuração não estará explicitamente definida e usará o valor padrão.

aws configure import

Importe CSV as credenciais geradas a partir do console IAM web. Isso não é para credenciais geradas pelo IAM Identity Center; os clientes que usam o IAM Identity Center devem usar o aws configure sso. Um CSV arquivo é importado com o nome do perfil correspondente ao nome de usuário. O CSV arquivo deve conter os seguintes cabeçalhos.

  • Nome de usuário

  • Access key ID (ID da chave de acesso)

  • Secret access key (Chave de acesso secreta)

nota

Durante a criação inicial do par de chaves, depois de fechar a caixa de diálogo Download .csv file (Baixar arquivo .csv), você não poderá acessar a chave de acesso secreta depois de fechar a caixa de diálogo. Se você precisar de um arquivo .csv, será necessário criá-lo por conta própria com os cabeçalhos necessários e as informações do par de chaves armazenado. Se você não tiver acesso às informações do par de chaves, será necessário criar outro par de chaves.

$ aws configure import --csv file://credentials.csv
aws configure list

Para listar os dados de configuração, use o comando aws configure list. Esse comando lista as informações de perfil, chave de acesso, chave secreta e configuração da região usadas para o perfil especificado. Para cada item de configuração, ele mostra o valor, onde o valor da configuração foi recuperado e o nome da variável de configuração.

Por exemplo, se você fornecer o Região da AWS em uma variável de ambiente, esse comando mostrará o nome da região que você configurou, que esse valor veio de uma variável de ambiente e o nome da variável de ambiente.

Para métodos de credenciais temporários, como funções e IAM Identity Center, esse comando exibe a chave de acesso temporariamente em cache e a chave de acesso secreta é exibida.

$ aws configure list Name Value Type Location ---- ----- ---- -------- profile <not set> None None access_key ****************ABCD shared-credentials-file secret_key ****************ABCD shared-credentials-file region us-west-2 env AWS_DEFAULT_REGION
aws configure list-profiles

Para listar todos os nomes de perfil, use o comando aws configure list-profiles.

$ aws configure list-profiles default test
aws configure sso

Execute esse comando para definir e visualizar rapidamente suas AWS IAM Identity Center credenciais, região e formato de saída. O exemplo a seguir mostra valores de exemplo.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access
aws configure sso-session

Execute esse comando para definir e visualizar rapidamente suas AWS IAM Identity Center credenciais, região e formato de saída na seção sso-session dos credentials arquivos e. config O exemplo a seguir mostra valores de exemplo.

$ aws configure sso-session SSO session name: my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access

Definir novos exemplos de comandos de configuração e credenciais

Os exemplos a seguir mostram a configuração de um perfil padrão com credenciais, região e saída especificadas para diferentes métodos de autenticação.

IAM Identity Center (SSO)

Este exemplo é para AWS IAM Identity Center usar o aws configure sso assistente. Para obter mais informações, consulte Configurando a autenticação do IAM Identity Center com o AWS CLI.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 Attempting to automatically open the SSO authorization page in your default browser. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
IAM Identity Center (Legacy SSO)

Este exemplo é para o método antigo de AWS IAM Identity Center usar o aws configure sso assistente. Para usar o legadoSSO, deixe o nome da sessão em branco. Para obter mais informações, consulte Configurando a autenticação do IAM Identity Center com o AWS CLI.

$ aws configure sso SSO session name (Recommended): SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 SSO authorization page has automatically been opened in your default browser. Follow the instructions in the browser to complete this authorization request. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
Short-term credentials

Este exemplo é para as credenciais de curto prazo do AWS Identity and Access Management. O assistente de configuração aws é usado para definir os valores iniciais e, depois, o comando aws configure set atribui o último valor necessário. Para obter mais informações, consulte Autenticação com credenciais de curto prazo para o AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json $ aws configure set aws_session_token fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
IAM role

Este exemplo é para assumir uma IAM função. Perfis que usam IAM funções obtêm credenciais de outro perfil e, em seguida, aplicam permissões de IAM função. Nos exemplos a seguir, default é o perfil de origem das credenciais, e user1 empresta as mesmas credenciais e assume um novo perfil. Não há assistente para esse processo, portanto, cada valor é definido usando o comando aws configure set. Para obter mais informações, consulte Usando uma IAM função no AWS CLI.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set source_profile default $ aws configure set role_session_name session_user1 $ aws configure set region us-west-2 $ aws configure set output json
Amazon EC2 instance metadata credentials

Este exemplo é para as credenciais obtidas dos metadados da EC2 instância de hospedagem da Amazon. Não há assistente para esse processo, portanto, cada valor é definido usando o comando aws configure set. Para obter mais informações, consulte Usando metadados de EC2 instâncias da Amazon como credenciais no AWS CLI.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set credential_source Ec2InstanceMetadata $ aws configure set region us-west-2 $ aws configure set output json
Long-term credentials
Atenção

Para evitar riscos de segurança, não use IAM usuários para autenticação ao desenvolver software específico ou trabalhar com dados reais. Em vez disso, use federação com um provedor de identidade, como AWS IAM Identity Center.

Este exemplo é para as credenciais de longo prazo do AWS Identity and Access Management. Para obter mais informações, consulte Autenticação usando credenciais de IAM usuário para o AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

Configurações de arquivo config compatíveis

As configurações a seguir têm suporte no arquivo config. Os valores listados no perfil especificado (ou padrão) serão usados, a menos que eles sejam ignorados pela presença de uma variável de ambiente ou uma opção de linha de comando com o mesmo nome. Para obter informações sobre a ordem de precedência das configurações, consulte Definindo configurações para o AWS CLI

Configurações globais

aws_access_key_id

Especifica a chave de AWS acesso usada como parte das credenciais para autenticar a solicitação de comando. Embora ela possa ser armazenada no arquivo config, recomendamos armazená-la no arquivo credentials.

Pode ser substituída pela variável de ambiente AWS_ACCESS_KEY_ID. Você não pode especificar o ID de chave de acesso como uma opção de linha de comando.

aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_secret_access_key

Especifica a chave AWS secreta usada como parte das credenciais para autenticar a solicitação de comando. Embora ela possa ser armazenada no arquivo config, recomendamos armazená-la no arquivo credentials.

Pode ser substituída pela variável de ambiente AWS_SECRET_ACCESS_KEY. Você não pode especificar a chave de acesso secreta como uma opção de linha de comando.

aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token

Especifica um token de AWS sessão. Um token de sessão só será necessário se você especificar manualmente credenciais de segurança temporárias. Embora ela possa ser armazenada no arquivo config, recomendamos armazená-la no arquivo credentials.

Pode ser substituída pela variável de ambiente AWS_SESSION_TOKEN. Você não pode especificar o token de sessão como uma opção de linha de comando.

aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
ca_bundle

Especifica um pacote de certificados CA (um arquivo com a .pem extensão) usado para verificar SSL certificados.

Pode ser substituído pela variável de ambiente AWS_CA_BUNDLE ou pela opção de linha de comando --ca-bundle.

ca_bundle = dev/apps/ca-certs/cabundle-2019mar05.pem
cli_auto_prompt

Ativa 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 da aws. Isso inclui pressionar ENTERapós um comando completo ou um comando incompleto.

    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.

    cli_auto_prompt = on-partial

Você pode sobrescrever essa configuração usando a variável de ambiente aws_cli_auto_prompt ou os parâmetros de linha de comando --cli-auto-prompt e --no-cli-auto-prompt.

Para obter informações sobre o recurso de solicitação automática da AWS CLI versão 2, consulteAtivando e usando os prompts de comando no AWS CLI.

cli_binary_format

Especifica como a AWS CLI versão 2 interpreta os parâmetros de entrada binários. Pode ter um dos valores a seguir:

  • base64: o valor padrão. Um parâmetro de entrada digitado como um objeto binário grande (BLOB) aceita uma string codificada em base64. Para passar conteúdo binário verdadeiro, coloque o conteúdo em um arquivo e forneça o caminho e o nome do arquivo com o prefixo fileb:// como o valor do parâmetro. Para passar um texto codificado em base64 contido em um arquivo, forneça o caminho e o nome do arquivo com o prefixo file:// como o valor do parâmetro.

  • raw-in-base64 saídas — Padrão para a AWS CLI versão 1. Se o valor da configuração for raw-in-base64-out, os arquivos referenciados usando o prefixo file:// serão lidos como texto e, então, a AWS CLI tenta codificá-lo em binário.

Esta entrada não tem uma variável de ambiente equivalente. Você pode especificar o valor em um único comando usando o parâmetro --cli-binary-format raw-in-base64-out.

cli_binary_format = raw-in-base64-out

Se você fizer referência a um valor binário em um arquivo usando a notação de fileb:// prefixo, AWS CLI sempre espera que o arquivo contenha conteúdo binário bruto e não tentará converter o valor.

Se você referenciar um valor binário em um arquivo usando a notação de file:// prefixo, ele AWS CLI manipula o arquivo de acordo com a configuração atualcli_binary_format. Se o valor dessa configuração for base64 (o padrão quando não definido explicitamente), AWS CLI espera-se que o arquivo contenha texto codificado em base64. Se o valor dessa configuração forraw-in-base64-out, AWS CLI espera que o arquivo contenha conteúdo binário bruto.

cli_history

Desabilitado por padrão. Essa configuração ativa o histórico de comandos para a AWS CLI. Depois de ativar essa configuração, ele AWS CLI registra o histórico dos aws comandos.

cli_history = enabled

Você pode listar seu histórico usando o comando aws history list e usar os command_idsresultantes no comando aws history show para obter detalhes. Para obter mais informações, consulte aws history no guia de referência da AWS CLI .

cli_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 por meio do programa de pager padrão do sistema operacional.

Pode ser substituído pela variável de AWS_PAGER ambiente.

cli_pager=less
cli_timestamp_format

Especifica o formato dos valores de timestamp incluídos no resultado. Você pode especificar qualquer um dos seguintes valores:

  • iso8601 — O valor padrão para a AWS CLI versão 2. Se especificado, o AWS CLI reformata todos os carimbos de data/hora de acordo com 8601. ISO

    ISOOs carimbos de data/hora formatados 8601 se parecem com os exemplos a seguir. O primeiro exemplo mostra a hora no Tempo Universal Coordenado (UTC) incluindo um Z após o horário. A data e a hora são separadas por T.

    2019-10-31T22:21:41Z

    Para especificar um fuso horário diferente, em vez deZ, especifique um + ou - e o número de horas em que o fuso horário desejado está adiantado ou atrasadoUTC, como um valor de dois dígitos. O exemplo a seguir mostra o mesmo horário do exemplo anterior, mas ajustado para o horário padrão do Pacífico, que está oito horas atrasadoUTC.

    2019-10-31T14:21:41-08
  • wire — O valor padrão para a AWS CLI versão 1. Se especificado, AWS CLI exibe todos os valores de timestamp exatamente como recebidos na resposta da HTTP consulta.

Essa entrada não tem uma variável de ambiente equivalente nem uma opção de linha de comando.

cli_timestamp_format = iso8601
credential_process

Especifica um comando externo que AWS CLI é executado para gerar ou recuperar credenciais de autenticação para usar nesse comando. O comando deve retornar as credenciais em um formato específico. Para obter mais informações sobre como usar essa configuração, consulte Fornecimento de credenciais com um processo externo no AWS CLI.

Essa entrada não tem uma variável de ambiente equivalente nem uma opção de linha de comando.

credential_process = /opt/bin/awscreds-retriever --username susan
credential_source

Usado em EC2 instâncias ou contêineres da Amazon para especificar onde eles AWS CLI podem encontrar credenciais para usar para assumir a função especificada com o role_arn parâmetro. Não é possível especificar source_profile e credential_source no mesmo perfil.

Esse parâmetro pode ter um dos três valores:

  • Ambiente — Especifica que AWS CLI é para recuperar as credenciais de origem das variáveis de ambiente.

  • Ec2 InstanceMetadata — Especifica que a AWS CLI IAM função anexada ao perfil da EC2 instância deve ser usada para obter as credenciais de origem.

  • EcsContainer— Especifica que deve usar a IAM função anexada ao ECS contêiner como credenciais de origem. AWS CLI

credential_source = Ec2InstanceMetadata
duration_seconds

Especifica a duração máxima da sessão da função, em segundos. Esse valor pode variar de 900 segundos (15 minutos) até o valor configurado de duração máxima da sessão para a função (que pode ser até 43200). Esse é um parâmetro opcional e, por padrão, o valor é definido como 3600 segundos.

endpoint_url

Especifica o endpoint usado para todas as solicitações de serviço. Se essa configuração for usada na seção services do arquivo config, o endpoint será usado somente para o serviço especificado.

O exemplo a seguir usa o endpoint global http://localhost:1234 e um endpoint específico de serviço de http://localhost:4567 para o Amazon S3.

[profile dev] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567

As configurações do endpoint estão localizadas em vários locais, como as variáveis de ambiente do sistema ou do usuário, arquivos de AWS configuração locais ou declaradas explicitamente na linha de comando como um parâmetro. As configurações do endpoint da AWS CLI têm precedência na seguinte ordem:

  1. A opção da linha de comando --endpoint-url.

  2. Se habilitada, a variável de ambiente global AWS_IGNORE_CONFIGURED_ENDPOINT_URLS ou a configuração do perfil ignore_configure_endpoint_urls para ignorar os endpoints personalizados.

  3. O valor fornecido por uma variável de ambiente específica do serviço AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Os valores fornecidos pelas variáveis de ambiente AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT e AWS_ENDPOINT_URL.

  5. O valor do endpoint específico de serviço fornecido pela configuração endpoint_url em uma seção services do arquivo compartilhado config.

  6. O valor fornecido pela configuração endpoint_url em um profile do arquivo compartilhado config.

  7. Configurações use_dualstack_endpoint, use_fips_endpoint e endpoint_url.

  8. Qualquer endpoint padrão URL para o respectivo AWS service (Serviço da AWS) é usado por último. Para obter uma lista dos endpoints de serviços padrão disponíveis em cada região, consulte Regiões e endpoints da AWS no Referência geral da Amazon Web Services.

ignore_configure_endpoint_urls

Se ativado, o AWS CLI ignora todas as configurações personalizadas de endpoint especificadas no arquivo. config Os valores válidos são true e false.

ignore_configure_endpoint_urls = true

As configurações do endpoint estão localizadas em vários locais, como as variáveis de ambiente do sistema ou do usuário, arquivos de AWS configuração locais ou declaradas explicitamente na linha de comando como um parâmetro. As configurações do endpoint da AWS CLI têm precedência na seguinte ordem:

  1. A opção da linha de comando --endpoint-url.

  2. Se habilitada, a variável de ambiente global AWS_IGNORE_CONFIGURED_ENDPOINT_URLS ou a configuração do perfil ignore_configure_endpoint_urls para ignorar os endpoints personalizados.

  3. O valor fornecido por uma variável de ambiente específica do serviço AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Os valores fornecidos pelas variáveis de ambiente AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT e AWS_ENDPOINT_URL.

  5. O valor do endpoint específico de serviço fornecido pela configuração endpoint_url em uma seção services do arquivo compartilhado config.

  6. O valor fornecido pela configuração endpoint_url em um profile do arquivo compartilhado config.

  7. Configurações use_dualstack_endpoint, use_fips_endpoint e endpoint_url.

  8. Qualquer endpoint padrão URL para o respectivo AWS service (Serviço da AWS) é usado por último. Para obter uma lista dos endpoints de serviços padrão disponíveis em cada região, consulte Regiões e endpoints da AWS no Referência geral da Amazon Web Services.

external_id

Especifica um identificador exclusivo que é usado por terceiros para assumir uma função em suas contas de clientes. Isso é mapeado para o parâmetro ExternalId na operação AssumeRole. Esse parâmetro será necessário somente se a política de confiança para a função especificar um valor para ExternalId. Para obter mais informações, consulte Como usar uma ID externa ao conceder acesso aos seus AWS recursos a terceiros no Guia do IAM usuário.

max_attempts

Especifica um valor máximo de tentativas que o manipulador de AWS CLI repetição usa, em que a chamada inicial conta para o max_attempts valor que você fornece.

Você pode substituir esse valor usando a variável de ambiente AWS_MAX_ATTEMPTS.

max_attempts = 3
mfa_serial

O número de identificação de um MFA dispositivo a ser usado ao assumir uma função. Isso é obrigatório somente se a política de confiança da função que está sendo assumida incluir uma condição que exija MFA autenticação. O valor pode ser um número de série para um dispositivo de hardware (comoGAHT12345678) ou um Amazon Resource Name (ARN) para um MFA dispositivo virtual (comoarn:aws:iam::123456789012:mfa/user).

output

Especifica o formato de saída padrão para comandos solicitados usando esse perfil. Você pode especificar qualquer um dos seguintes valores:

  • json— A saída é formatada como uma JSONstring.

  • yaml— A saída é formatada como uma YAMLstring.

  • yaml-stream— A saída é transmitida e formatada como uma YAMLstring. A transmissão possibilita um manuseio mais rápido de tipos de dados grandes.

  • text: a saída é formatada como várias linhas de valores de string separados por tabulação. Isso pode ser útil para passar a saída para um processador de texto, como grep, sed ou awk.

  • table: a saída é formatada como uma tabela usando os caracteres +|- para formar as bordas da célula. Geralmente, a informação é apresentada em um formato "amigável", que é muito mais fácil de ler do que outros, mas não tão útil programaticamente.

Pode ser substituído pela variável de ambiente AWS_DEFAULT_OUTPUT ou pela opção de linha de comando --output.

output = table
parameter_validation

Especifica se o AWS CLI cliente tenta validar os parâmetros antes de enviá-los ao ponto final do AWS serviço.

  • true: o valor padrão. Se especificado, o AWS CLI executa a validação local dos parâmetros da linha de comando.

  • false — Se especificado, o AWS CLI não valida os parâmetros da linha de comando antes de enviá-los ao endpoint do AWS serviço.

Essa entrada não tem uma variável de ambiente equivalente nem uma opção de linha de comando.

parameter_validation = false
region

Especifica o Região da AWS envio de solicitações para comandos solicitados usando esse perfil.

  • É possível especificar qualquer um dos códigos de região disponíveis para o serviço escolhido, conforme listado em Regiões e endpoints da AWS na Referência geral da Amazon Web Services.

  • aws_globalpermite que você especifique o endpoint global para serviços que oferecem suporte a um endpoint global, além de endpoints regionais, como AWS Security Token Service ()AWS STS e Amazon Simple Storage Service (Amazon S3).

Você pode substituir esse valor usando a variável de ambiente AWS_REGION, a variável de ambiente AWS_DEFAULT_REGION ou a opção da linha de comando --region.

region = us-west-2
retry_mode

Especifica qual modo de repetição usa. AWS CLI 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 AWS CLI novas tentativas no AWS CLI.

Você pode substituir esse valor usando a variável de ambiente AWS_RETRY_MODE.

retry_mode = standard
role_arn

Especifica o Amazon Resource Name (ARN) de uma IAM função que você deseja usar para executar os AWS CLI comandos. Também é necessário especificar um dos seguintes parâmetros para identificar as credenciais que têm permissão para assumir essa função:

  • source_profile

  • credential_source

role_arn = arn:aws:iam::123456789012:role/role-name

A variável de ambiente AWS_ROLE_ARN sobrescreve essa configuração.

Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.

role_session_name

Especifica o nome a ser associado à sessão da função. Esse valor é fornecido ao RoleSessionName parâmetro quando ele AWS CLI chama a AssumeRole operação e se torna parte da função assumida de usuárioARN: arn:aws:sts::123456789012:assumed-role/role_name/role_session_name. 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.

role_session_name = maria_garcia_role

A variável de ambiente AWS_ROLE_SESSION_NAME sobrescreve essa configuração.

Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.

services

Especifica a configuração de serviço a ser usada em seu perfil.

[profile dev-s3-specific-and-global] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567

Para obter mais informações sobre a seção services, consulte Tipo de seção: services.

A variável de ambiente AWS_ROLE_SESSION_NAME sobrescreve essa configuração.

Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.

sdk_ua_app_id

Um único Conta da AWS pode ser usado por vários aplicativos de clientes para fazer chamadas para Serviços da AWS. O ID do aplicativo identifica qual aplicativo de origem fez um conjunto de chamadas usando um AWS service (Serviço da AWS). AWS SDKse os serviços não usam nem interpretam esse valor a não ser para trazê-lo de volta às comunicações com o cliente. Por exemplo, esse valor pode ser incluído em e-mails operacionais para identificar com exclusividade quais dos seus aplicativos estão associados à notificação.

O ID do aplicativo é uma string com comprimento máximo de 50 caracteres. Letras, números e os seguintes caracteres especiais são permitidos: ! $ % & * + - . , ^ _ ` | ~ Por padrão, nenhum valor é atribuído.

sdk_ua_app_id = prod1

Essa configuração pode ser substituída usando a variável de ambiente AWS_SDK_UA_APP_ID. Você não pode definir esse valor como um parâmetro de linha de comando.

source_profile

Especifica um perfil nomeado com credenciais de longo prazo que a AWS CLI pode usar para assumir uma função que você especificou com o parâmetro role_arn. Não é possível especificar source_profile e credential_source no mesmo perfil.

source_profile = production-profile
sso_account_id

Especifica a ID da AWS conta que contém a IAM função com a permissão que você deseja conceder ao usuário associado do IAM Identity Center.

Essa configuração não tem uma variável de ambiente nem uma opção de linha de comando.

sso_account_id = 123456789012
sso_region

Especifica a AWS região que contém o host do portal de AWS acesso. Isso é separado e pode ser uma região diferente do CLI region parâmetro padrão.

Essa configuração não tem uma variável de ambiente nem uma opção de linha de comando.

sso_region = us_west-2
sso_registration_scopes

Uma lista delimitada por vírgulas de escopos a serem autorizados para sso-session. Os escopos autorizam o acesso aos endpoints autorizados do token portador do IAM Identity Center. Um escopo válido é uma string, como sso:account:access. Essa configuração não é aplicável à configuração herdada não atualizável.

sso_registration_scopes = sso:account:access
sso_role_name

Especifica o nome amigável da IAM função que define as permissões do usuário ao usar esse perfil.

Essa configuração não tem uma variável de ambiente nem uma opção de linha de comando.

sso_role_name = ReadAccess
sso_start_url

Especifica o URL que aponta para o portal de AWS acesso da organização. O AWS CLI usa isso URL para estabelecer uma sessão com o serviço IAM Identity Center para autenticar seus usuários. Para encontrar seu portal de AWS acessoURL, use um dos seguintes:

  • Abra seu e-mail de convite, o portal de AWS acesso URL está listado.

  • Abra o AWS IAM Identity Center console em https://console.aws.amazon.com/singlesignon/. O portal de AWS acesso URL está listado em suas configurações.

Essa configuração não tem uma variável de ambiente nem uma opção de linha de comando.

sso_start_url = https://my-sso-portal.awsapps.com/start
use_dualstack_endpoint

Permite o uso de endpoints de pilha dupla para enviar solicitações. AWS Para saber mais sobre endpoints de pilha dupla, que oferecem suporte tanto ao tráfego quanto ao IPv6 tráfego, consulte Como IPv4 usar endpoints de pilha dupla do Amazon S3 no Guia do usuário do Amazon Simple Storage Service. Endpoints de pilha dupla estão disponíveis para alguns serviços em algumas regiões. Se não existir um endpoint de pilha dupla para o serviço ou Região da AWS se a solicitação falhar. Ela fica desabilitada por padrão.

Isso é mutuamente exclusivo com a configuração use_accelerate_endpoint.

As configurações do endpoint estão localizadas em vários locais, como as variáveis de ambiente do sistema ou do usuário, arquivos de AWS configuração locais ou declaradas explicitamente na linha de comando como um parâmetro. As configurações do endpoint da AWS CLI têm precedência na seguinte ordem:

  1. A opção da linha de comando --endpoint-url.

  2. Se habilitada, a variável de ambiente global AWS_IGNORE_CONFIGURED_ENDPOINT_URLS ou a configuração do perfil ignore_configure_endpoint_urls para ignorar os endpoints personalizados.

  3. O valor fornecido por uma variável de ambiente específica do serviço AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Os valores fornecidos pelas variáveis de ambiente AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT e AWS_ENDPOINT_URL.

  5. O valor do endpoint específico de serviço fornecido pela configuração endpoint_url em uma seção services do arquivo compartilhado config.

  6. O valor fornecido pela configuração endpoint_url em um profile do arquivo compartilhado config.

  7. Configurações use_dualstack_endpoint, use_fips_endpoint e endpoint_url.

  8. Qualquer endpoint padrão URL para o respectivo AWS service (Serviço da AWS) é usado por último. Para obter uma lista dos endpoints de serviços padrão disponíveis em cada região, consulte Regiões e endpoints da AWS no Referência geral da Amazon Web Services.

use_fips_endpoint

Alguns AWS serviços oferecem endpoints compatíveis com o Federal Information Processing Standard (FIPS) 140-2 em alguns. Regiões da AWS Quando o AWS serviço oferece suporteFIPS, essa configuração especifica qual FIPS endpoint eles AWS CLI devem usar. Ao contrário dos AWS endpoints padrão, os FIPS endpoints usam uma biblioteca TLS de software compatível com 140-2. FIPS Esses endpoints podem ser necessários por empresas que interagem com o governo dos Estados Unidos.

Se essa configuração estiver ativada, mas não existir um FIPS endpoint para o serviço em seu Região da AWS, o AWS comando poderá falhar. Nesse caso, especifique manualmente o endpoint a ser usado no comando usando a opção --endpoint-url ou use endpoints específicos do serviço.

Para obter mais informações sobre como especificar FIPS endpoints por Região da AWS, consulte FIPSEndpoints by Service.

As configurações do endpoint estão localizadas em vários locais, como as variáveis de ambiente do sistema ou do usuário, arquivos de AWS configuração locais ou declaradas explicitamente na linha de comando como um parâmetro. As configurações do endpoint da AWS CLI têm precedência na seguinte ordem:

  1. A opção da linha de comando --endpoint-url.

  2. Se habilitada, a variável de ambiente global AWS_IGNORE_CONFIGURED_ENDPOINT_URLS ou a configuração do perfil ignore_configure_endpoint_urls para ignorar os endpoints personalizados.

  3. O valor fornecido por uma variável de ambiente específica do serviço AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Os valores fornecidos pelas variáveis de ambiente AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT e AWS_ENDPOINT_URL.

  5. O valor do endpoint específico de serviço fornecido pela configuração endpoint_url em uma seção services do arquivo compartilhado config.

  6. O valor fornecido pela configuração endpoint_url em um profile do arquivo compartilhado config.

  7. Configurações use_dualstack_endpoint, use_fips_endpoint e endpoint_url.

  8. Qualquer endpoint padrão URL para o respectivo AWS service (Serviço da AWS) é usado por último. Para obter uma lista dos endpoints de serviços padrão disponíveis em cada região, consulte Regiões e endpoints da AWS no Referência geral da Amazon Web Services.

web_identity_token_file

Especifica o caminho para um arquivo que contém um token de acesso OAuth 2.0 ou token de ID do 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ção AssumeRoleWithWebIdentity.

A variável de ambiente AWS_WEB_IDENTITY_TOKEN_FILE sobrescreve essa configuração.

Para obter mais informações sobre o uso de identidades da Web, consulte Assumir a função com a identidade da web.

tcp_keepalive

Especifica se o AWS CLI cliente usa pacotes TCP keep-alive.

Essa entrada não tem uma variável de ambiente equivalente nem uma opção de linha de comando.

tcp_keepalive = false

Configurações de comando personalizadas do S3

O Amazon S3 oferece suporte a várias configurações que definem como ele AWS CLI executa as operações do Amazon S3. Algumas se aplicam a todos os comandos do S3 nos namespaces s3api e s3. Outros são especificamente para os comandos “personalizados” do S3 que abstraem operações comuns e fazem mais do que one-to-one mapear uma API operação. Os comandos de transferência aws s3 cp, sync, mv e rm têm configurações adicionais que você pode usar para controlar as transferências do S3.

Todas essas opções podem ser configuradas especificando a configuração s3 aninhada em seu arquivo config. Depois, cada configuração é recuada em sua própria linha.

nota

Essas configurações são totalmente opcionais. Você deve ser capaz de usar com êxito os comandos de transferência aws s3 sem definir nenhuma dessas configurações. Essas configurações são fornecidas para permitir que você ajuste a performance ou considere o ambiente específico no qual está executando esses comandos aws s3.

Essas configurações são todas definidas em uma chave s3 de nível superior no arquivo config, conforme mostrado no exemplo a seguir para o perfil development.

[profile development] s3 = max_concurrent_requests = 20 max_queue_size = 10000 multipart_threshold = 64MB multipart_chunksize = 16MB max_bandwidth = 50MB/s use_accelerate_endpoint = true addressing_style = path

As configurações a seguir se aplicam a qualquer comando do S3 nos namespaces s3 ou s3api.

addressing_style

Especifica qual estilo de endereçamento usar. Isso controla se o nome do bucket está no nome do host ou faz parte doURL. Os valores válidos são: path, virtual e auto. O valor padrão é auto.

Há dois estilos de criação de um endpoint do Amazon S3. O primeiro é chamado virtual e inclui o nome do bucket como parte do nome do host. Por exemplo: https://bucketname.s3.amazonaws.com. Como alternativa, com o path estilo, você trata o nome do bucket como se fosse um caminho noURI; por exemplo,https://s3.amazonaws.com/bucketname. O valor padrão em CLI is to useauto, que tenta usar o virtual estilo sempre que possível, mas volta ao path estilo quando necessário. Por exemplo, se o nome do bucket não for DNS compatível, o nome do bucket não poderá fazer parte do nome do host e deverá estar no caminho. Comauto, CLI ele detectará essa condição e mudará automaticamente para o path estilo para você. Se você definir o estilo de endereçamento comopath, deverá garantir que a AWS região que você configurou AWS CLI corresponda à região do seu bucket.

payload_signing_enabled

Especifica se as cargas sigv4 devem ser SHA256 assinadas. Por padrão, isso está desativado para uploads de streaming (UploadPartePutObject) durante o usoHTTPS. Por padrão, isso é definido como false para uploads de streaming (UploadPartePutObject), mas somente se a estiver presente (ele é gerado por padrão) e o endpoint usa. ContentMD5 HTTPS

Se definido como verdadeiro, as solicitações do S3 recebem validação adicional de conteúdo na forma de uma SHA256 soma de verificação que é calculada para você e incluída na assinatura da solicitação. Se for definido como false, a soma de verificação não será calculada. Desativar essa opção poderá ser útil para reduzir a sobrecarga de performance criada pela soma da soma de verificação.

use_accelerate_endpoint

Use o endpoint Amazon S3 Accelerate para todos os comandos s3 e s3api. O valor padrão é falso. Isso é mutuamente exclusivo com a configuração use_dualstack_endpoint.

Se definido como verdadeiro, ele AWS CLI direciona todas as solicitações do Amazon S3 para S3 Accelerate o endpoint em. s3-accelerate.amazonaws.com Para usar esse endpoint, é necessário ativar o bucket para usar o S3 Accelerate. Todas as solicitações são enviadas usando o estilo virtual de endereçamento de bucket: my-bucket.s3-accelerate.amazonaws.com. As solicitações ListBuckets, CreateBucket e DeleteBucket não são enviadas ao endpoint do S3 Accelerate porque esse endpoint não oferece suporte a essas operações. Esse comportamento também poderá ser definido se o parâmetro --endpoint-url estiver definido como https://s3-accelerate.amazonaws.com ou http://s3-accelerate.amazonaws.com para qualquer comando s3 ou s3api.

As seguintes configurações se aplicam somente aos comandos do conjunto de comandos do namespace s3.

max_bandwidth

Especifica a largura de banda máxima que pode ser consumida para carregar e baixar dados de e para o Amazon S3. O padrão é sem limite.

Isso limita a largura de banda máxima que os comandos do S3 podem usar para transferir dados de e para o Amazon S3. Esse valor se aplica apenas a uploads e downloads; ele não se aplica a cópias nem as exclui. O valor é expresso em bytes por segundo. O valor pode ser especificado como:

  • Um valor inteiro. Por exemplo, 1048576 define o uso máximo da largura de banda como 1 megabyte por segundo.

  • Um valor inteiro seguido por um sufixo de taxa. Você pode especificar sufixos de taxa usando: KB/s, MB/s ou GB/s. Por exemplo, 300KB/s, 10MB/s.

Em geral, recomendamos que você primeiro tente reduzir o consumo de largura de banda diminuindo max_concurrent_requests. Se isso não adequar o consumo de largura de banda limite para a taxa desejada, você poderá usar a configuração max_bandwidth para limitar ainda mais o consumo de largura de banda. Isso ocorre porque max_concurrent_requests controla o número de threads em execução no momento. Se, em vez disso, você baixar primeiro, max_bandwidth mas deixar uma configuração max_concurrent_requests alta, isso pode fazer com que threads tenham que esperar desnecessariamente. Isso pode levar ao excesso de consumo de recursos e tempos limite de conexão.

max_concurrent_requests

Especifica o número máximo de solicitações simultâneas. O valor padrão é 10.

Os comandos de transferência aws s3 são multithread. Em um determinado momento, várias solicitações do Amazon S3 podem estar em execução. Por exemplo, quando você usa o comando aws s3 cp localdir s3://bucket/ --recursive para fazer upload de arquivos em um bucket do S3, eles AWS CLI podem fazer upload dos arquivos localdir/file1localdir/file2, e localdir/file3 em paralelo. A configuração max_concurrent_requests especifica o número máximo de operações de transferência que podem ser executadas ao mesmo tempo.

Talvez você precise alterar esse valor por alguns motivos:

  • Diminuir esse valor: em alguns ambientes, o padrão de 10 solicitações simultâneas pode sobrecarregar um sistema. Isso pode causar erros de tempo limite de conexão ou diminuir a capacidade de resposta do sistema. Reduzir esse valor faz com que os comandos de transferência do S3 usem menos recursos. A desvantagem é que as transmissões do S3 podem levar mais tempo para serem concluídas. Reduzir esse valor poderá ser necessário se você usar uma ferramenta para limitar a largura de banda.

  • Aumentar esse valor: em alguns cenários, talvez você queira que as transferências do Amazon S3 sejam concluídas com o máximo de rapidez possível, usando tanta largura de banda de rede quanto necessário. Nesse cenário, o número padrão de solicitações simultâneas pode não ser suficiente para utilizar toda a largura de banda de rede disponível. O aumento desse valor pode melhorar o tempo necessário para concluir uma transferência do Amazon S3.

max_queue_size

Especifica o número máximo de tarefas na fila de tarefas. O valor padrão é 1000.

O usa AWS CLI internamente um modelo em que enfileira tarefas do Amazon S3 que são então executadas por consumidores cujos números são limitados por. max_concurrent_requests Em geral, uma tarefa é mapeada para uma única operação do Amazon S3. Por exemplo, a tarefa pode ser PutObjectTask, GetObjectTask ou UploadPartTask. A taxa na qual as tarefas são adicionadas à fila pode ser muito mais rápida do que a taxa na qual os consumidores concluem as tarefas. Para evitar o crescimento não vinculado, o tamanho da fila de tarefas é limitada a um tamanho específico. Essa configuração altera o valor desse número máximo.

Em geral, você não precisa alterar essa configuração. Essa configuração também corresponde ao número de tarefas que ele conhece e que precisam ser executadas. AWS CLI Isso significa que, por padrão, eles só AWS CLI podem ver 1000 tarefas à frente. Aumentar esse valor significa que eles AWS CLI podem saber mais rapidamente o número total de tarefas necessárias, supondo que a taxa de filas seja mais rápida do que a taxa de conclusão da tarefa. A desvantagem é que um max_queue_size maior requer mais memória.

multipart_chunksize

Especifica o tamanho do fragmento que ele AWS CLI usa para transferências de várias partes de arquivos individuais. O valor padrão é de 8 MB, com um mínimo de 5 MB.

Quando uma transferência de arquivos excede o multipart_threshold, a AWS CLI divide o arquivo em blocos desse tamanho. Esse valor pode ser especificado usando a mesma sintaxe que multipart_threshold, como o número de bytes como um número inteiro ou usando um tamanho e um sufixo.

multipart_threshold

Especifica o limite de tamanho AWS CLI usado para transferências de várias partes de arquivos individuais. O valor padrão é de 8 MB.

Ao carregar, baixar ou copiar um arquivo, os comandos do Amazon S3 alternarão para operações multipart se o arquivo exceder esse tamanho. É possível especificar esse valor de duas formas:

  • O tamanho do arquivo em bytes. Por exemplo, 1048576.

  • O tamanho do arquivo com um sufixo de tamanho. Você pode usar KB, MB, GB ou TB. Por exemplo: 10MB, 1GB.

    nota

    O S3 pode impor restrições quanto a valores válidos que podem ser usados para operações multipart. Para obter mais informações, consulte a documentação do Carregamento fracionado do S3 no Manual do usuário do Amazon Simple Storage Service.