View a markdown version of this page

Como simular políticas - AWS Identity and Access Management

Como simular políticas

Você pode executar simulações no console do IAM ou com a AWS CLI e a API da AWS. Para obter uma visão geral do que o simulador avalia, dos dois modos e de como ele alcança um resultado, consulte Testar políticas do IAM com o simulador de políticas do IAM. Para as permissões necessárias, consulte Permissões para usar o simulador de políticas.

Simular políticas (console)

Você pode executar simulações no simulador de políticas no console do IAM. No painel de navegação, escolha Simulador de políticas.

nota

O console autônomo do simulador de políticas em https://policysim.aws.amazon.com/ não é mais mantido. Use o simulador de políticas no console do IAM.

Modo Entidade principal

Selecionar uma identidade

Você começa selecionando uma identidade. Você pode selecionar usuários, perfis ou grupos do IAM nessa conta. O painel lateral preencherá as políticas anexadas a essas identidades após sua seleção.

Incluir ou excluir políticas

O painel lateral lista as políticas no escopo da simulação, incluindo políticas em linha, gerenciadas pela AWS e gerenciadas pelo cliente, além de qualquer limite de permissões. Você pode excluir uma política para ver como o resultado muda sem ela e depois incluí-la novamente. A exclusão de uma política que concedeu acesso altera o resultado para uma negação implícita.

Adicionar ações e recursos

O console do simulador de políticas do IAM no modo Entidade principal.

Depois de escolher identidades e políticas no painel esquerdo, adicione as ações que você deseja testar. Para uma ação que ofereça suporte a uma seleção de recursos, você pode testar todos os recursos ou inserir um ou mais ARNs de recursos específicos. Quando várias ações usam o mesmo tipo de recurso, você pode aplicar um recurso a todas elas de uma vez ou aplicar o escopo a uma única ação.

Uma ação no simulador de políticas do IAM que requer apenas um único tipo de recurso.

Algumas ações exigem um grupo de tipos de recursos relacionados antes que o simulador possa avaliá-las. Por exemplo, quando você simula ec2:RunInstances, o console solicita que você especifique uma imagem, uma instância e um grupo de segurança juntos, além de uma sub-rede ou um volume, dependendo do cenário.

Uma ação no simulador de políticas do IAM que exige vários tipos de recursos.

Forneça valores de chave de condição

Se as políticas testadas incluírem chaves de condição, o simulador listará as chaves relevantes e permitirá que você defina valores antes de executar a simulação. As chaves mostradas refletem as políticas atualmente selecionadas; portanto, selecionar ou limpar uma política adiciona ou remove suas chaves. Se um valor não atender a uma condição, a ação será negada.

O simulador fornece valores para chaves de condição em dois lugares. As condições de solicitação global se aplicam a toda a solicitação simulada. Essas são as chaves que começam com aws:, como aws:MultiFactorAuthPresent ou aws:PrincipalServiceNamesList, e você define seus valores uma vez na área de condições globais. Selecionar ou limpar uma política adiciona ou remove suas chaves globais, e os valores inseridos são mantidos à medida que você ajusta quais políticas estão no escopo. As condições específicas do serviço se aplicam a uma única ação. Cada linha de ação mostra o número de condições a que ela faz referência, e você abre a linha para definir as chaves específicas do serviço para essa ação, como cloudwatch:namespace para cloudwatch:PutMetricData ou ram:PermissionResourceType para ram:ListPermissionAssociations. Uma linha de ação pode incluir uma chave global e uma chave específica do serviço e, se algum valor não atender a uma condição, essa ação será negada.

O simulador de políticas do IAM preenche algumas chaves de contexto de entidade principal e organizacional para você, e você fornece valores para o restante. Para obter a lista de chaves que são preenchidas automaticamente e mais informações sobre como as chaves de condição são avaliadas, consulte Como funciona a avaliação da chave de condição no simulador de políticas do IAM.

Para saber como usar chaves de condição, consulte AWSChaves de contexto de condições globais da.

Testar um limite de permissões

Quando uma identidade tem um limite de permissões, ela aparece no painel lateral e é incluída por padrão. Você também pode excluir o limite e executar a simulação novamente, se quiser descobrir se o limite é o motivo pelo qual uma ação foi negada.

Por exemplo, vamos supor que você simule iam:DeleteRole para uma identidade cujo limite não permite isso. O resultado é uma negação atribuída ao limite de permissões. Se você adicionar uma política que permita a ação e excluir o limite, o resultado será alterado para uma permissão. Isso confirma que o limite foi o único controle que bloqueou a ação.

Resultado da simulação atribuído a um limite de permissões no simulador de políticas do IAM.

Incluir políticas de controle de serviço

Se a sua conta for membro de uma organização, você poderá incluir políticas de controle de serviço (SCPs) na simulação no painel lateral. O simulador avalia as chaves de condição preenchidas automaticamente e o escopo dos recursos em SCPs ao determinar o resultado. Quando uma SCP nega explicitamente uma ação, o resultado é uma negação explícita atribuída ao AWS Organizations, e uma permissão em outra política não pode substituí-la. Desative o controle e execute a simulação novamente para ver o resultado sem os controles da organização. Para obter uma lista de chaves de condição preenchidas automaticamente, consulte Como funciona a avaliação da chave de condição no simulador de políticas do IAM.

nota

Por motivos de segurança, o simulador não revela os detalhes da avaliação do SCP. As chaves de condição referenciadas somente por SCPs não são listadas para que você defina valores, e as instruções correspondentes retornadas para um resultado não incluem instruções de SCPs. As chaves e as instruções correspondentes vêm das políticas baseadas em identidade anexadas à identidade e de quaisquer políticas que você fornecer.

Testar uma política baseada em recurso

Para incluir uma política baseada em recursos em uma simulação de console, insira um ARN de recurso específico e escolha a opção de incluir a política do recurso. A política baseada em recursos aparece no painel lateral e é avaliada no resultado. No console, isso está disponível para buckets do Amazon S3, filas do Amazon SQS, tópicos do Amazon SNS e cofres do Amazon Glacier.

nota

A simulação de políticas baseadas em recursos não é compatível com perfis do IAM.

Ler os resultados

Cada linha na tabela de resultados mostra se a ação é permitida, negada implicitamente ou negada explicitamente, junto com uma breve explicação do resultado. Use a explicação para identificar qual política ou controle determinou o resultado, como uma permissão explícita, a ausência de uma instrução correspondente, um limite de permissões ou um controle organizacional.

Modo personalizado

Você pode usar o editor de políticas do IAM para escrever ou colar políticas baseadas em identidade e limites de permissões no modo personalizado. Essas políticas não estão associadas a uma identidade e podem ser avaliadas antes de você aplicá-las. Você pode incluir várias políticas baseadas em identidade, mas apenas um limite de permissões para simulação.

nota

No modo Personalizado, o console não oferece suporte à transmissão de SCPs personalizadas nem à simulação de políticas baseadas em recursos. Para simular SCPs personalizados ou políticas baseadas em recursos, use a AWS CLI ou a API da AWS.

O console do simulador de políticas do IAM no modo personalizado.

Simular políticas (AWS CLI e API da AWS)

A simulação de políticas com a AWS CLI ou API da AWS geralmente envolve duas etapas:

  1. Avaliar as políticas e retornar a lista de chaves de contexto às quais elas fazem referência, para que você saiba quais valores de chave de contexto fornecer. Esta etapa é opcional.

  2. Simular as políticas fornecendo as ações, recursos e valores de chave de contexto a serem usados durante a simulação.

Cada ação é combinada com cada recurso, e a simulação determina se as políticas permitem ou negam essa ação para esse recurso. Você pode fornecer valores para qualquer chave de contexto referenciada por suas políticas. Se você não fornecer um valor para uma chave de contexto, a simulação ainda será executada e retornará uma negação implícita, e as chaves ausentes serão retornadas em missingContextValues para que você saiba quais valores adicionar. Se uma chave de contexto ausente for referenciada somente por um SCP, essa chave não será retornada por motivos de segurança, mas você ainda receberá a decisão.

As ações da API são divididas em dois grupos:

Essas ações também são compatíveis com o seguinte:

  • OrderedOrganizationPolicyInputList em SimulateCustomPolicy permite simular o efeito da hierarquia de SCP de uma organização sem usar uma entidade principal ativa.

  • PolicyExclusionList em SimulatePrincipalPolicy permite testar cenários “e se eu removesse essa política?” sem alterar quais políticas estão associadas à entidade principal.

  • A resposta retorna um único EvaluationResult por ação, com decisões agregadas no nível superior e detalhes por recurso em ResourceSpecificResults.

Referência da AWS CLI e API da AWS

Para exemplos de comandos da AWS CLI para simular políticas, consulte o seguinte: