Assumir um perfil com credenciais da AWS para autenticar SDKs e ferramentas da AWS - AWS SDKs e ferramentas

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

Assumir um perfil com credenciais da AWS para autenticar SDKs e ferramentas da AWS

Assumir um perfil envolve o uso de um conjunto de credenciais temporárias de segurança para acessar recursos da AWS aos quais você talvez não tenha acesso de outra forma. Essas credenciais de segurança temporárias consistem em um ID de chave de acesso, uma chave de acesso secreta e um token de segurança. Para saber mais sobre as solicitações de API AWS Security Token Service (AWS STS), consulte Ações na Referência da API doAWS Security Token Service.

Para configurar seu SDK ou ferramenta para assumir um perfil, você deve primeiro criar ou identificar um perfil específico a ser assumido. Os perfis do IAM são identificados exclusivamente por um perfil do nome do recurso da Amazon (ARN). Os perfis estabelecem as relações de confiança com uma outra entidade. A entidade de confiança que usa o perfil pode ser um AWS service (Serviço da AWS) ou outra Conta da AWS. Para obter mais informações sobre perfis do IAM, consulte Perfis do IAM no Guia do usuário do IAM.

Depois que perfil do IAM for identificado, se você tiver a confiança desse perfil, poderá configurar seu SDK ou ferramenta para usar as permissões concedidas pelo perfil.

nota

É uma prática recomendada da AWS usar endpoints regionais sempre que possível e também para configurar a Região da AWS.

Assumir um perfil do IAM

Ao assumir um perfil, o AWS STS retorna um conjunto de credenciais temporárias de segurança. Essas credenciais são provenientes de outro perfil ou da instância ou contêiner em que seu código está sendo executado. O uso mais comum desse método de assumir um perfil é quando você tem credenciais da AWS para uma conta, mas a aplicação precisa acessar recursos em outra conta.

Etapa 1: Configurar um perfil do IAM

Para configurar seu SDK ou ferramenta para assumir um perfil, você deve primeiro criar ou identificar um perfil específico a ser assumido. Os perfis do IAM são identificados exclusivamente usando um ARN de perfil. Os perfis estabelecem relações de confiança com outra entidade, normalmente dentro da sua conta ou para acesso entre contas. Para saber mais, consulte Criar perfis do IAM no Guia do usuário do IAM.

Etapa 2: Configurar o SDK ou a ferramenta

Configure o SDK ou a ferramenta para obter credenciais de credential_source ou source_profile.

Use credential_source para obter credenciais de um contêiner do Amazon ECS, de uma instância do Amazon EC2 ou de variáveis de ambiente.

Use source_profile para obter credenciais de outro perfil. O source_profile também suporta o encadeamento de perfis, que são hierarquias de perfis em que um perfil assumido é então usado para assumir outro perfil.

Quando isso é especificado em um perfil, o SDK ou ferramenta faz automaticamente a chamada de API AssumeRole do AWS STS correspondente para você. Para recuperar e usar credenciais temporárias assumindo um perfil, especifique os seguintes valores de configuração no arquivo compartilhado config da AWS. Para obter mais detalhes sobre cada uma dessas configurações, consulte a seção Assuma as configurações do provedor de credenciais do perfil.

  • role_arn: a partir do perfil do IAM que você criou na Etapa 1

  • Configure um credential_source ou source_profile

  • (Opcional) duration_seconds

  • (Opcional) external_id

  • (Opcional) mfa_serial

  • (Opcional) role_session_name

Os exemplos a seguir mostram a configuração de ambas as opções de perfis assumidos em um arquivo compartilhado config:

role_arn = arn:aws:iam::123456789012:role/my-role-name credential_source = Ec2InstanceMetadata
[profile-with-user-that-can-assume-role] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [profile dev] region = us-east-1 output = json role_arn = arn:aws:iam::123456789012:role/my-role-name source_profile = profile-with-user-that-can-assume-role role_session_name = my_session

Para obter mais detalhes sobre todas as configurações do provedor de credenciais para assumir o perfil, consulte este guia Assuma o perfil de provedor de credenciais.