Como gerenciar recursos da organização com segurança por padrão

Se você é um novo cliente, o Google Cloud provisiona automaticamente um recurso da organização para seu domínio nos seguintes cenários:

  • Um usuário do seu domínio faz login pela primeira vez.
  • Um usuário cria uma conta de faturamento que não tem um recurso de organização associado.

A configuração padrão desse recurso da organização, caracterizada por acesso irrestrito, pode tornar a infraestrutura suscetível a violações de segurança. Por exemplo, a criação de chaves de conta de serviço padrão é uma vulnerabilidade crítica que expõe os sistemas a possíveis violações.

Com as aplicações de políticas da organização com segurança por padrão, as posturas não seguras são tratadas com um pacote de políticas da organização aplicadas no momento da criação de um recurso da organização. Exemplos dessas restrições incluem desativar a criação de chaves da conta de serviço e o upload da chave da conta de serviço.

Quando um usuário existente cria uma organização, a postura de segurança para o novo recurso da organização é diferente dos recursos atuais. Isso acontece por causa da aplicação de políticas de segurança por padrão da organização. Essas políticas vão ser aplicadas a organizações criadas no início de 2024, à medida que o recurso é implantado gradualmente.

Como administrador, veja a seguir os cenários em que essas restrições de políticas da organização são aplicadas automaticamente:

  • Conta do Google Workspace ou do Cloud Identity: quando você tem uma conta do Google Workspace ou do Cloud Identity, é criado um recurso da organização associado ao seu domínio. As políticas da organização com segurança por padrão são aplicadas automaticamente no recurso da organização.
  • Criação de conta de faturamento: se a conta de faturamento criada não estiver associada a um recurso de organização, um recurso de organização será criado automaticamente. As políticas da organização com segurança por padrão são aplicadas no recurso da organização. Este cenário funciona no console do Google Cloud e CLI gcloud.

Permissões necessárias

O papel de gerenciamento de identidade e acesso roles/orgpolicy.policyAdmin permite que um administrador gerencie políticas da organização. Você precisa ser um administrador de políticas da organização para alterar ou substituir as políticas da organização. Para conceder o papel, execute o seguinte comando:

gcloud organizations add-iam-policy-binding ORGANIZATION --member=PRINCIPAL --role=ROLE

Substitua:

  • ORGANIZATION: identificador exclusivo da organização.
  • PRINCIPAL: o principal a que a vinculação será adicionada. Ele precisa estar no formato user|group|serviceAccount:email ou domain:domain. Por exemplo, user:222larabrown@gmail.com.
  • ROLE: papel a ser concedido ao principal. Use o caminho completo de um papel predefinido. Nesse caso, precisa ser roles/orgpolicy.policyAdmin.

Políticas da organização aplicadas aos recursos da organização

A tabela a seguir lista as restrições de política da organização que são aplicadas automaticamente quando você cria um recurso da organização.

Nome da política da organização Restrição da política da organização Descrição Impacto da aplicação da política
Desativar a criação de chaves da conta de serviço iam.disableServiceAccountKeyCreation Impeça que os usuários criem chaves permanentes para contas de serviço. Reduz o risco de exposição das credenciais da conta de serviço.
Desativar upload de chave da conta de serviço iam.disableServiceAccountKeyUpload Impeça o upload de chaves públicas externas para contas de serviço. Reduz o risco de exposição das credenciais da conta de serviço.
Desativar concessões automáticas de papéis a contas de serviço padrão iam.automaticIamGrantsForDefaultServiceAccounts Impedir que as contas de serviço padrão recebam o papel do IAM excessivamente permissivo Editor na criação. O papel Editor permite que a conta de serviço crie e exclua recursos para a maioria dos serviços do Google Cloud, o que cria uma vulnerabilidade se a conta de serviço for comprometida.
Restringir identidades por domínio iam.allowedPolicyMemberDomains Limite o compartilhamento de recursos a identidades que pertencem a um recurso da organização específico. Deixar o recurso da organização aberto ao acesso de atores com domínios diferentes do cliente cria uma vulnerabilidade.
Restringir contatos por domínio essentialcontacts.allowedContactDomains Limite os contatos essenciais para permitir que apenas identidades de usuário gerenciadas em domínios selecionados recebam notificações de plataforma. Um usuário de má-fé com um domínio diferente pode ser adicionado como Contatos essenciais, comprometendo a segurança.
Acesso uniforme no bucket storage.uniformBucketLevelAccess Impeça que os buckets do Cloud Storage usem a ACL por objeto (um sistema separado das políticas do IAM) para fornecer acesso. Aplica consistência no gerenciamento e na auditoria de acesso.
Usar o DNS zonal por padrão compute.setNewProjectDefaultToZonalDNSOnly Defina restrições para impedir que os desenvolvedores de aplicativos escolham configurações de DNS globais para instâncias do Compute Engine. As configurações de DNS globais têm menor confiabilidade de serviço do que as configurações de DNS por zona.

Gerenciar a aplicação das políticas da organização

É possível gerenciar a aplicação das políticas da organização das seguintes maneiras:

Listar políticas da organização

Para verificar se as políticas da organização com segurança por padrão são aplicadas na sua organização, use o seguinte comando:

gcloud resource-manager org-policies list --organization=ORGANIZATION_ID

Substitua ORGANIZATION_ID pelo identificador exclusivo da sua organização.

Desativar políticas da organização

Para desativar ou excluir uma política da organização, execute o seguinte comando:

gcloud org-policies delete CONSTRAINT_NAME --organization=ORGANIZATION_ID

Substitua:

  • CONSTRAINT_NAME é o nome da restrição de política da organização que você quer excluir. Um exemplo é iam.allowedPolicyMemberDomains.
  • ORGANIZATION_ID é o identificador exclusivo da organização.

Adicionar ou atualizar valores para uma política da organização

Para adicionar ou atualizar valores para uma política da organização, é preciso armazená-los em um arquivo YAML. Este é um exemplo de como o conteúdo desse arquivo pode ser:

{
  "name": "organizations/ORG_ID/policies/CONSTRAINT_NAME",
  "spec": {
    "rules": [
      {
        "values": {
            "allowedValues": ["VALUE_A"]
        }
      }
    ]
  }
}

Para adicionar ou atualizar esses valores listados no arquivo YAML, execute o seguinte comando:

gcloud org-policies set-policy POLICY_FILE

Substitua POLICY_FILE pelo caminho para o arquivo YAML que contém os valores da política da organização.