Conceder permissões para criar credenciais de segurança temporárias - AWS Identity and Access Management

Conceder permissões para criar credenciais de segurança temporárias

Por padrão, os usuários do IAM não têm permissão para criar credenciais de segurança temporárias para sessões de usuários federados do AWS STS e perfis. Você deve usar uma política para fornecer essas permissões aos usuários. Embora você possa conceder permissões diretamente a um usuário, é altamente recomendável que você conceda permissões para um grupo. Isso torna o gerenciamento de permissões muito mais fácil. Quando alguém não precisar mais executar as tarefas associadas às permissões, bastará removê-las do grupo. Se outra pessoa precisa executar essa tarefa, adicione-a ao grupo para conceder as permissões.

Para conceder a um grupo do IAM permissão para criar credenciais de segurança temporárias para sessões de usuários federados do AWS STS ou perfid, anexe uma política que conceda um ou ambos os seguintes privilégios:

  • Para entidades principais federadas OIDC e SAML acessarem um perfil do IAM, conceda acesso a AssumeRole do AWS STS.

  • Para usuários federados do AWS STS que não precisam de um perfil, conceda acesso a GetFederationToken do AWS STS.

Para obter mais informações sobre as diferenças entre o AssumeRole e GetFederationToken operações de API, consulte Solicitar credenciais de segurança temporárias.

Os usuários do IAM também podem chamar GetSessionToken para criar credenciais de segurança temporárias. Nenhuma permissão é necessária para um usuário realizar a chamada GetSessionToken. O objetivo dessa operação é autenticar o usuário que usa a MFA. Não é possível usar políticas para controlar a autenticação. Isso significa que não é possível impedir que os usuários do IAM chamem GetSessionToken para criar credenciais temporárias.

exemplo Exemplo de política que concede permissão para assumir uma função

O exemplo de política a seguir concede permissão para chamar AssumeRole para o perfil UpdateApp na Conta da AWS 123123123123. Quando AssumeRole é usado, o usuário (ou o aplicativo) que cria as credenciais de segurança em nome de um usuário federado não pode delegar permissões que já não tenham sido especificadas na política de permissões da função.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::123123123123:role/UpdateAPP" }] }
exemplo Exemplo de política que concede permissão para criar credenciais de segurança temporárias para um usuário federado

No exemplo a seguir a política concede permissões de acesso GetFederationToken.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "sts:GetFederationToken", "Resource": "*" }] }
Importante

Quando você concede a usuários do IAM permissão para criar credenciais de segurança temporárias para usuários federados do AWS STS com GetFederationToken, isso permite que eles deleguem suas próprias permissões. Para obter mais informações sobre a delegação de permissões entre usuários do IAM e Contas da AWS, consulte Exemplos de políticas para delegação de acesso. Para obter mais informações sobre o controle de permissões em credenciais de segurança temporárias, consulte Permissões de credenciais de segurança temporárias.

exemplo Exemplo de política que concede a um usuário permissão limitada para criar credenciais de segurança temporárias para usuários federados

Quando você permite que um usuário do IAM chame GetFederationToken, uma prática recomendada é restringir as permissões que esse usuário do IAM pode delegar. Por exemplo, a política a seguir mostra como permitir que um usuário do IAM crie credenciais de segurança temporárias apenas para usuários federados do AWS STS cujos nomes começam com Manager.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "sts:GetFederationToken", "Resource": ["arn:aws:sts::123456789012:federated-user/Manager*"] }] }