Exemplos gerais
Negar acesso a AWS com base na Região da AWS solicitada
Tópicos
Este SCP nega o acesso a quaisquer operações fora das regiões especificadas. Substituia eu-central-1
e eu-west-1
pelo Regiões da AWS que você deseja usar. Ele fornece isenções para operações em serviços globais aprovados. Este exemplo também mostra como isentar solicitações feitas por uma das duas funções de administrador especificadas.
nota
Para usar a SCP de negação de região com o AWS Control Tower, consulte Negar acesso a AWS com base na Região da AWS solicitada no Guia de referência de controles do AWS Control Tower.
Essa política usa o efeito Deny
para negar acesso a todas as solicitações de operações que não visam uma das duas regiões aprovadas (eu-central-1
e eu-west-1
). O elemento NotAction permite listar serviços cujas operações (ou operações individuais) estão isentas dessa restrição. Como os serviços globais têm endpoints fisicamente hospedados pela região us-east-1
, eles devem ser isentados dessa maneira. Com um SCP estruturado dessa forma, as solicitações feitas aos serviços globais na região us-east-1
serão permitidas se o serviço solicitado estiver incluído no elemento NotAction
. Quaisquer outras solicitações para serviços na região us-east-1
são negadas por essa política de exemplo.
nota
Este exemplo pode não incluir todos os últimos serviços ou operações globais dos Serviços da AWS. Substitua a lista de serviços e operações pelos serviços globais usados por contas em sua organização.
Dica
É possível visualizar os dados do serviço acessados pela última vez no console do IAM para determinar quais serviços globais são usados pela sua organização. A guia Consultor de acesso na página de detalhes de um usuário, um grupo ou uma função do IAM exibe os serviços da AWS que foram usados por essa entidade, classificados pelo acesso mais recente.
Considerações
-
AWS KMS e AWS Certificate Manager suportam endpoints regionais. No entanto, se você quiser usá-los com um serviço global como o Amazon CloudFront, você deve incluí-los na lista de exclusão de serviço global na SCP do exemplo a seguir. Um serviço global como o Amazon CloudFront geralmente requer acesso ao AWS KMS e o ACM na mesma região, que para um serviço global é a região Leste dos EUA (Norte da Virgínia) (
us-east-1
). -
Por padrão, o AWS STS é um serviço global e deve ser incluído na lista global de exclusão de serviços. No entanto, você pode habilitar o AWS STS para usar endpoints de região em vez de um único endpoint global. Se você fizer isso, você pode remover STS da lista de isenção de serviço global na SCP do exemplo a seguir. Para obter mais informações, consulte Gerenciar o AWS STS no Região da AWS.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOutsideEU", "Effect": "Deny", "NotAction": [ "a4b:*", "acm:*", "aws-marketplace-management:*", "aws-marketplace:*", "aws-portal:*", "budgets:*", "ce:*", "chime:*", "cloudfront:*", "config:*", "cur:*", "directconnect:*", "ec2:DescribeRegions", "ec2:DescribeTransitGateways", "ec2:DescribeVpnGateways", "fms:*", "globalaccelerator:*", "health:*", "iam:*", "importexport:*", "kms:*", "mobileanalytics:*", "networkmanager:*", "organizations:*", "pricing:*", "route53:*", "route53domains:*", "route53-recovery-cluster:*", "route53-recovery-control-config:*", "route53-recovery-readiness:*", "s3:GetAccountPublic*", "s3:ListAllMyBuckets", "s3:ListMultiRegionAccessPoints", "s3:PutAccountPublic*", "shield:*", "sts:*", "support:*", "trustedadvisor:*", "waf-regional:*", "waf:*", "wafv2:*", "wellarchitected:*" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:RequestedRegion": [ "eu-central-1", "eu-west-1" ] }, "ArnNotLike": { "aws:PrincipalARN": [ "arn:aws:iam::*:role/Role1AllowedToBypassThisSCP", "arn:aws:iam::*:role/Role2AllowedToBypassThisSCP" ] } } } ] }
Evite que usuários e funções do IAM façam determinadas alterações
Esta SCP restringe que usuários e funções do IAM façam alterações em uma função do IAM criada em todas as contas em sua organização.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessToASpecificRole", "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/name-of-role-to-deny" ] } ] }
Impedir que usuários e funções do IAM façam alterações especificadas, com uma exceção para uma função de administrador especificada
Esta SCP se baseia no exemplo anterior para fazer uma exceção para administradores. Isso impede que usuários e funções do IAM nas contas afetadas façam alterações em uma função administrativa comum do IAM criada em todas as contas em sua organização, exceto para os administradores que usam uma função especificada.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessWithException", "Effect": "Deny", "Action": [ "iam:AttachRolePolicy", "iam:DeleteRole", "iam:DeleteRolePermissionsBoundary", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateAssumeRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription" ], "Resource": [ "arn:aws:iam::*:role/name-of-role-to-deny" ], "Condition": { "ArnNotLike": { "aws:PrincipalARN":"arn:aws:iam::*:role/name-of-admin-role-to-allow" } } } ] }
Exigir MFA para executar uma operação de API
Use uma SCP, como a seguinte, para exigir que a autenticação multifator (MFA) seja habilitada para que uma un usuário ou função do IAM possa executar uma ação. Neste exemplo, a ação é interromper uma instância do Amazon EC2.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyStopAndTerminateWhenMFAIsNotPresent", "Effect": "Deny", "Action": [ "ec2:StopInstances", "ec2:TerminateInstances" ], "Resource": "*", "Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": false}} } ] }
Bloquear o acesso ao serviço para o usuário root
A seguinte política restringe o acesso a ações especificadas para o usuário root em uma conta membro. Para impedir que suas contas usem credenciais raiz de formas específicas, adicione suas próprias ações a esta política.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RestrictEC2ForRoot", "Effect": "Deny", "Action": [ "ec2:*" ], "Resource": [ "*" ], "Condition": { "StringLike": { "aws:PrincipalArn": [ "arn:aws:iam::*:root" ] } } } ] }
Impedir que a conta membro saia da organização
A política a seguir bloqueia o uso da operação de API LeaveOrganization
para que os administradores de contas membro não possam remover suas contas da organização.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "organizations:LeaveOrganization" ], "Resource": "*" } ] }