Usei a API AssumeRole com credenciais temporárias para assumir uma função do AWS Identity and Access Management (IAM). No entanto, recebi um erro semelhante ao seguinte: “O DurationSeconds solicitado excede o limite de sessão de 1 hora para perfis assumidos pelo encadeamento de perfis”.
Resolução
Para assumir uma função que tenha credenciais de segurança temporárias, use a AWS Command Line Interface (AWS CLI) com o encadeamento de funções. O encadeamento de funções limita sua sessão de função da CLI da AWS ou da API da AWS a no máximo 1 hora. Você não pode aumentar a duração da sessão. A duração máxima de 1 hora se aplica somente à CLI e à API da AWS. Para obter mais informações sobre o encadeamento de funções, consulte Termos e conceitos de funções.
Observação: se você receber erros ao executar comandos da AWS CLI, consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Use as práticas recomendadas a seguir com o encadeamento de perfis:
- A operação falhará se o valor do parâmetro DurationSeconds para as credenciais temporárias for maior que uma hora.
- O Console de Gerenciamento da AWS não oferece suporte ao encadeamento de perfis. Para obter as credenciais temporárias de uma função, use o atributo de troca de função no Console de Gerenciamento da AWS. O Console de Gerenciamento da AWS usa as credenciais do IAM ou do usuário federado para mudar para outro perfil.
- Usuários da Autenticação Multifator (MFA) com a AWS CLI usam credenciais temporárias para assumir outro perfil. As credenciais temporárias usam a API AWS STS GetSessionToken e são limitadas a 1 hora.
- Se você usar o encadeamento de funções para assumir a Função B para a mesma conta da AWS que a Função A, atribua permissões adicionais à Função A. As permissões adicionais para a Função A evitam o encadeamento de funções na Função B.
Informações relacionadas
Solução de problemas do IAM e do Amazon EC2