Como uso SCPs e políticas de tags para que os usuários nas contas de membros da minha organização em Organizations não possam criar recursos?

3 minuto de leitura
0

Quero usar políticas de controle de serviço (SCPs) e políticas de tags para que os usuários em minhas contas de membros em AWS Organizations não possam criar recursos da AWS.

Breve descrição

Use políticas de tags para manter tags padronizadas nos recursos compatíveis da AWS em suas contas de membros em sua organização. Por padrão, a diferenciação de maiúsculas e minúsculas da chave de tag é herdada da política principal. Para definir a diferenciação de maiúsculas e minúsculas da chave de tag aplicada, selecione Usar a diferenciação de maiúsculas e minúsculas que você especificou acima para a chave de tag. Se uma política principal não existir ou você não ativar a diferenciação de maiúsculas e minúsculas, uma chave de tag totalmente em minúsculas será considerada compatível.

Quando você cria um recurso, as políticas de tags verificam se há chaves de tag compatíveis que correspondam ao valor da tag e à diferenciação de maiúsculas e minúsculas definidos. No entanto, um usuário pode modificar as chaves de tag padronizadas e criar recursos sem tags compatíveis. Use SCPs para restringir as permissões das entidades em suas contas de membros.

Resolução

Usar políticas de tags para evitar tags não compatíveis em recursos novos ou já criados

A política a seguir permite que os usuários alterem tag_value das instâncias do Amazon Elastic Compute Cloud (Amazon EC2) somente para Preprod ou Production:

{  
  "tags": {
    "Environment": {
      "tag_key": {
        "@@assign": "Environment"
      },
      "tag_value": {
        "@@assign": [
          "Preprod",
          "Production"
        ]
      },
      "enforced_for": {
        "@@assign": [
          "ec2:instance"
        ]
      }
    }
  }
}

Na política anterior, um usuário não pode inserir Dev em tag_value porque a política não define a opção Dev. Além disso, se a política incluir a opção de diferenciação de maiúsculas e minúsculas, o usuário não poderá alterar Ambiente para ambiente.

Usar SCPs para interromper a criação de recursos de instância sem uma chave de tag compatível

A SCP a seguir exige que os usuários incluam uma chave de tag compatível nos metadados da instância ao chamarem a operação da API RunInstances. Se um usuário com essa SCP vinculada criar um recurso com uma tag compatível, ele não poderá adicionar, modificar ou excluir pares de chaves-valor de tag:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "DenyUpdatingOrDeletingAnyTagOnInstanceWithAnAttachedCopliantTags",
      "Effect": "Deny",
      "Action": [
        "ec2:CreateTags",
        "ec2:DeleteTags"
      ],
      "Resource": "arn:aws:ec2:*:*:instance/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Environment": [
            "Preprod",
            "Production"
          ]
        },
        "Null": {
          "aws:ResourceTag/Environment": "false"
        }
      }
    },
    {
      "Sid": "DenyRunInstancesWithoutOneofTheCompliantTagKeys",
      "Effect": "Deny",
      "Action": [
        "ec2:RunInstances"
      ],
      "Resource": "arn:aws:ec2:*:*:instance/*",
      "Condition": {
        "Null": {
          "aws:RequestTag/Environment": "true"
        }
      }
    }
  ]
}

Observação: ao chamar a API RunInstances, certifique-se de passar todas as tags necessárias.

Informações relacionadas

Qual é a diferença entre uma política de controle de serviços do AWS Organizations e uma política do IAM?

Sintaxe da política de tags

AWS OFICIAL
AWS OFICIALAtualizada há 2 meses