Métodos para assumir um perfil - AWS Identity and Access Management

Métodos para assumir um perfil

Para que um usuário, uma aplicação ou um serviço possa usar um perfil que você criou, você deverá conceder permissões para alternar para esse perfil. É possível usar qualquer política anexada a grupos ou usuários para conceder as permissões necessárias. Depois que as permissões forem concedidas, o usuário poderá assumir um perfil do AWS Management Console, do Tools for Windows PowerShell, da AWS Command Line Interface (AWS CLI) e da API AssumeRole.

Importante

Ao criar uma função de forma programática, em vez de no console do IAM, você tem a opção de adicionar um Path de até 512 caracteres além do RoleName, que pode ter até 64 caracteres. No entanto, se você pretende usar uma função com o recurso Switch Role (Alternar função) no AWS Management Console, o Path e o RoleName combinados não podem exceder 64 caracteres.

O método usado para assumir o perfil determina quem pode assumir a função e por quanto tempo a sessão da função pode durar. Ao usar o código AssumeRole* das operações da API, o perfil do IAM que você assume é o de recursos. O usuário ou perfil que chama operações da API AssumeRole* é a entidade principal.

A tabela a seguir compara os métodos usados para assumir perfis.

Método de assumir a função Quem pode assumir a função Método para especificar a vida útil da credencial Vida útil da credencial (mín.|máx.|padrão)
AWS Management Console Usuário (mudando perfis) Maximum session duration (Duração máxima da sessão) na página Resumo Role (Função) 15 min|Configuração de duração máxima da sessão²|1 h
Operação da CLI assume-role ou da API AssumeRole Usuário ou perfil¹ Parâmetro da CLI duration-seconds ou da API DurationSeconds 15 min|Configuração de duração máxima da sessão²|1 h
Operação da CLI assume-role-with-saml ou da API AssumeRoleWithSAML Qualquer usuário autenticado usando SAML Parâmetro da CLI duration-seconds ou da API DurationSeconds 15 min|Configuração de duração máxima da sessão²|1 h
Operação da CLI assume-role-with-web-identity ou da API AssumeRoleWithWebIdentity Qualquer usuário autenticado usando um provedor OIDC Parâmetro da CLI duration-seconds ou da API DurationSeconds 15 min|Configuração de duração máxima da sessão²|1 h
URL do console construído com AssumeRole Usuário ou perfil Parâmetro HTML SessionDuration no URL 15 min|12 h|1 h
URL do console construído com AssumeRoleWithSAML Qualquer usuário autenticado usando SAML Parâmetro HTML SessionDuration no URL 15 min|12 h|1 h
URL do console construído com AssumeRoleWithWebIdentity Qualquer usuário autenticado usando um provedor OIDC Parâmetro HTML SessionDuration no URL 15 min|12 h|1 h

¹ O uso de credenciais de uma função para assumir uma função diferente é chamado de encadeamento de funções. Quando você usa o encadeamento de funções, suas novas credenciais são limitadas a uma duração máxima de uma hora. Quando você usa funções para conceder permissões a aplicativos executados em instâncias do EC2, esses aplicativos não estão sujeitos a essa limitação.

² Essa configuração pode ter um valor de 1 hora a 12 horas. Para obter detalhes sobre como modificar a configuração de duração máxima da sessão, consulte Gerenciamento de perfis do IAM. Essa configuração determina a duração máxima da sessão que você pode solicitar ao obter as credenciais da função. Por exemplo, quando você usa as operações da API AssumeRole* para assumir uma função, você pode especificar um tamanho de sessão usando o parâmetro DurationSeconds. Use este parâmetro para especificar o tamanho da sessão da função de 900 segundos (15 minutos) até o valor configurado da duração máxima da sessão para a função. Os usuários do IAM que trocam de perfis no console recebem a duração máxima da sessão ou o tempo restante na sessão de usuário, o que for menor. Suponha que você defina uma duração máxima de 5 horas em uma função. Um usuário do IAM conectado ao console por 10 horas (do máximo padrão de 12) alterna para a função. A duração da sessão de função disponível é de 2 horas. Para saber como visualizar o valor máximo para sua função, consulte Atualizar a duração máxima da sessão de um perfil mais adiante nesta página.

Observações
  • A configuração da duração máxima da sessão não limita as sessões assumidas por produtos da AWS.

  • As credenciais do perfil do IAM do Amazon EC2 não estão sujeitas às durações máximas de sessão configuradas no perfil.

  • Para permitir que os usuários assumam novamente o perfil atual em uma sessão de perfil, especifique o ARN do perfil ou o ARN da Conta da AWS como entidade principal na política de confiança do perfil. Os Serviços da AWS que fornecem recursos computacionais, como o Amazon EC2, Amazon ECS, Amazon EKS e Lambda, fornecem credenciais temporárias e atualizam automaticamente essas credenciais. Isso garante que você tenha sempre um conjunto de credenciais válido. Nesses serviços, não é necessário assumir novamente a função atual para obter credenciais temporárias. Porém, se pretender passar tags de sessão ou uma política de sessão, você precisará assumir novamente a função atual. Para saber como modificar uma política de confiança de função para adicionar o ARN da função de entidade principal ou o ARN da Conta da AWS, consulte Atualizar a política de confiança de um perfil .