Desabilitar permissões de credenciais de segurança temporárias
As credenciais de segurança temporárias são válidas até que expirem. Essas credenciais são válidas pela duração especificada, de 900 segundos (15 minutos) até um máximo de 129.600 segundos (36 horas). A duração padrão da sessão é de 43.200 segundos (12 horas). É possível revogar essas credenciais, mas também é necessário alterar as permissões do perfil para impedir que atividades mal-intencionadas na conta usem credenciais comprometidas. As permissões atribuídas às credenciais de segurança temporárias são avaliadas cada vez que são usadas para fazer uma solicitação da AWS. Quando você remove todas as permissões das credenciais, as solicitações da AWS que as usam falham.
Pode levar alguns minutos para que as atualizações da política entrem em vigor. Revogue as credenciais de segurança temporárias do perfil para forçar todos os usuários que assumem o perfil a se autenticarem novamente e a solicitarem novas credenciais.
Não é possível alterar as permissões para um Usuário raiz da conta da AWS. Da mesma forma, você não pode alterar as permissões para as credenciais de segurança temporárias criadas chamando GetFederationToken
ou GetSessionToken
enquanto estiver conectado como usuário raiz. Por esse motivo, recomendamos que você não chame o GetFederationToken
nem o GetSessionToken
como usuário raiz.
Importante
Para usuários no Centro de Identidade do IAM, consulte Disable user access no Guia do usuário do AWS IAM Identity Center. Você também pode remover o acesso do usuário para aplicações em nuvem ou aplicações SAML 2.0 personalizadas no console do Centro de Identidade do IAM.
Tópicos
Negar acesso a todas as sessões associadas a um perfil
Use essa abordagem quando tiver preocupações com relação a acesso suspeito por meio de:
-
Entidades principais de outra conta usando acesso entre contas
-
Identidades de usuários externos com permissões de acesso a recursos da AWS em sua conta
-
Os usuários que foram autenticados em uma aplicação móvel ou Web com um provedor de OIDC
Esse procedimento nega permissões para todos os usuários que tenham permissões para assumir um perfil.
Para alterar ou remover permissões atribuídas a credenciais de segurança temporárias obtidas chamando as APIs AssumeRole
, AssumeRoleWithSAML
, AssumeRoleWithWebIdentity
, GetFederationToken
ou GetSessionToken
, edite ou exclua a política de permissões que define as permissões do perfil.
Importante
Se houver uma política baseada em recursos que permita o acesso da entidade principal, você também deverá adicionar uma negação explícita para o recurso. Para mais detalhes, consulte Negar um usuário de sessão com políticas baseadas em recursos.
-
Faça login no AWS Management Console e abra o console do IAM.
-
No painel de navegação, escolha o nome do perfil a ser editado. Você pode usar a caixa de pesquisa para filtrar a lista.
-
Selecione a política relevante.
-
Escolha a aba Permissões.
-
Escolha a guia JSON e atualize a política para negar todos os recursos e ações.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "*", "Resource": "*" } ] }
-
Na página Revisão, revise o Resumo da política e, em seguida, selecione Salvar alterações para salvar seu trabalho.
Quando você atualiza a política, as alterações afetam as permissões de todas as credenciais de segurança temporárias associadas ao perfil, incluindo credenciais emitidas antes da alteração da política de permissões do perfil. Após atualizar a política, você poderá revogar as credenciais de segurança temporárias do perfil para revogar imediatamente todas as permissões às credenciais emitidas pelo perfil.
Negar acesso a uma sessão específica
Quando você atualiza os perfis que podem ser assumidos com base em um IdP com uma política de negação ou exclui totalmente o perfil, todos os usuários com acesso ao perfil são interrompidos. É possível negar o acesso com base no elemento Principal
sem afetar as permissões de todas as outras sessões associadas ao perfil.
É possível negar permissões à Principal
usando chaves de contexto de condição ou políticas baseadas em recursos.
dica
Você pode encontrar os ARNs de usuários federados usando logs do AWS CloudTrail. Para obter mais informações, consulte a página How to Easily Identify Your Federated Users by Using AWS CloudTrail
Negar uma sessão de usuário com chaves de contexto de condição
Você pode usar chaves de contexto de condição em situações em que deseja negar acesso a sessões temporárias de credenciais de segurança específicas sem afetar as permissões do usuário ou perfil do IAM que criaram as credenciais.
Para obter mais informações sobre chaves de contexto de condição, consulte Chaves de contexto de condição globais da AWS.
nota
Se houver uma política baseada em recursos que permita o acesso da entidade principal, você também deverá adicionar uma instrução de negação explícita à política baseada em recursos após completar essas etapas.
Após atualizar a política, você poderá revogar as credenciais de segurança temporárias do perfil para revogar imediatamente todas as credenciais emitidas.
aws:PrincipalArn
É possível usar a chave de contexto de condição aws:PrincipalArn para negar acesso a um ARN de entidade principal específico. Faça isso especificando o identificador exclusivo (ID) do usuário, perfil ou usuário federado do IAM ao qual as credenciais de segurança temporárias estão associadas na condição de uma política.
-
No painel de navegação do console do IAM, escolha o nome do perfil a ser editado. Você pode usar a caixa de pesquisa para filtrar a lista.
-
Selecione a política relevante.
-
Escolha a aba Permissões.
-
Escolha a guia JSON e adicione uma instrução de negação para o ARN da entidade principal, conforme mostrado no exemplo a seguir.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "ArnEquals": { "aws:PrincipalArn": [ "arn:aws:iam::
222222222222
:role/ROLENAME
", "arn:aws:iam::222222222222
:user/USERNAME
", "arn:aws:sts::222222222222
:federated-user/USERNAME
" ] } } } ] } -
Na página Revisão, revise o Resumo da política e, em seguida, selecione Salvar alterações para salvar seu trabalho.
aws:userid
Você pode usar a chave de contexto de condição aws:userid para negar acesso a todas ou a sessões temporárias de credenciais de segurança específicas que estão associadas ao usuário ou perfil do IAM. Faça isso especificando o identificador exclusivo (ID) do usuário, perfil ou usuário federado do IAM ao qual as credenciais de segurança temporárias estão associadas no elemento Condition
de uma política.
A política a seguir mostra um exemplo de como é possível negar acesso a sessões temporárias de credenciais de segurança usando a chave de contexto de condição aws:userid
.
-
AIDAXUSER1
representa o identificador exclusivo de um usuário do IAM. Especificar o identificador exclusivo de um usuário do IAM como valor para a chave de contextoaws:userid
negará todas as sessões associadas ao usuário do IAM. -
AROAXROLE1
representa o identificador exclusivo de um perfil do IAM. Especificar o identificador exclusivo de um perfil do IAM como valor para a chave de contextoaws:userid
negará todas as sessões associadas ao perfil. -
AROAXROLE2
representa o identificador exclusivo de uma sessão assumed-role. Na parte caller-specified-role-session-name do identificador exclusivo assumed-role, você pode especificar o nome da sessão do perfil ou um caractere curinga se o operador de condição StringLike for usado. Se você especificar o nome da sessão do perfil, isso negará a sessão do perfil nomeada sem afetar as permissões do perfil que criou as credenciais. Se você especificar um curinga para o nome da sessão do perfil, ele negará todas as sessões associadas ao perfil. -
account-id:<federated-user-caller-specified-name>
representa o identificador exclusivo de uma sessão de usuário federado. O usuário federado é criado por um usuário do IAM que chama a API GetFederationToken. Se você especificar o identificador exclusivo para o usuário federado, ele negará a sessão do usuário federado nomeado sem afetar as permissões do perfil que criou as credenciais.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "StringLike": { "aws:userId": [ "
AIDAXUSER1
", "AROAXROLE1
", "AROAXROLE2
:<caller-specified-role-session-name
>", "account-id
:<federated-user-caller-specified-name
>" ] } } } ] }
Para exemplos específicos de valores de chave de entidade principal, consulte Valores de chave de principal. Para obter mais informações sobre identificadores exclusivos do IAM, consulte Identificadores exclusivos.
Negar um usuário de sessão com políticas baseadas em recursos
Se o ARN da entidade principal também estiver incluído em qualquer política baseada em recursos, você também deverá revogar o acesso com base nos valores principalId
e sourceIdentity
do usuário específico no elemento Principal
de uma política baseada em recursos. Se você atualizar somente a política de permissões para o perfil, o usuário ainda poderá realizar as ações permitidas na política baseada em recursos.
-
Consulte Serviços da AWS que funcionam com o IAM para ver se o serviço oferece suporte a políticas baseadas em recursos.
-
Faça login no AWS Management Console e abra o console do serviço. Cada serviço tem uma localização diferente no console para anexar políticas.
-
Edite a instrução de política para especificar as informações de identificação da credencial:
-
Em
Principal
, insira o ARN da credencial a ser negada. -
Em
Effect
, digite “Deny”. -
Em
Action
, insira o namespace do serviço e o nome da ação a ser negada. Para negar todas as ações, use o caractere curinga (*). Por exemplo: “s3:*.” -
Em
Resource
, insira o ARN do recurso de destino. Por exemplo: arn:aws:s3:::EXAMPLE-BUCKET.”
{ "Version": "2012-10-17", "Statement": { "Principal": [ "arn:aws:iam::
222222222222
:role/ROLENAME
", "arn:aws:iam::222222222222
:user/USERNAME
", "arn:aws:sts::222222222222
:federated-user/USERNAME
" ], "Effect": "Deny", "Action": "s3:*", "Resource": "arn:aws:s3
:::EXAMPLE-BUCKET
" } } -
-
Salve seu trabalho.