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 funções e usuários federados. 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 usuários federados ou funções, anexe uma política que conceda um ou ambos os seguintes privilégios:
-
Para usuários federados acessarem uma função do IAM conceda acesso a
AssumeRole
doAWS STS. -
Para usuários federados que não precisam de uma função, conceda acesso ao AWS STS do
GetFederationToken
.
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ê dá permissão a usuários do IAM para criar credenciais de segurança temporárias para usuários federados 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 cujos nomes comecem com Manager (Gerente).
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "sts:GetFederationToken", "Resource": ["arn:aws:sts::123456789012:federated-user/Manager*"] }] }