Como restringir o uso de recursos

Esta página fornece uma visão geral da restrição da política da organização uso restrito do serviço de recursos, que permite aos administradores da empresa controlar quais serviços do Google Cloud podem ser usados na hierarquia de recursos do Google Cloud. Essa restrição só pode ser aplicada em serviços com recursos que são descendentes diretos de uma organização, pasta ou recurso do projeto. Por exemplo, Compute Engine e Cloud Storage.

A restrição Restringir o uso do serviço de recursos exclui e não funciona com determinados serviços que são dependências essenciais para produtos do Google Cloud, como o Identity and Access Management (IAM), o Cloud Logging e o Cloud Monitoring. Para ver a lista de serviços de recursos da nuvem compatíveis com essa restrição, consulte Como restringir serviços compatíveis com o uso de recursos.

Os administradores podem usar essa restrição para definir restrições hierárquicas em serviços de recursos permitidos do Google Cloud em um contêiner de recursos, como uma organização, uma pasta ou um projeto. Por exemplo, permita storage.googleapis.com no projeto X ou negue compute.googleapis.com na pasta Y. Essa restrição também determina a disponibilidade do console do Google Cloud.

A restrição Restringir o uso do serviço de recurso pode ser usada de duas formas mutuamente exclusivas:

  • Lista de bloqueio: recursos de qualquer serviço que não tenha sido negado são permitidos.

  • Lista de permissões: os recursos de qualquer serviço que não seja permitido são negados.

A restrição Restringir o uso do serviço de recurso controla o acesso ao ambiente de execução para todos os recursos no escopo. Quando a política da organização que contém essa restrição é atualizada, ela é imediatamente aplicada a todos os acessos a todos os recursos no escopo da política, com consistência posterior.

Recomendamos que os administradores gerenciem com cuidado as atualizações das políticas da organização que contêm essa restrição. É possível implementar essa alteração de política com mais segurança usando tags para aplicar a restrição condicionalmente. Para mais informações, consulte Como configurar uma política da organização com tags.

Quando um serviço é restrito por essa política, alguns serviços do Google Cloud que têm uma dependência direta do serviço restrito também serão restritos. Isso só é válido para serviços que gerenciam os mesmos recursos do cliente. Por exemplo, o Google Kubernetes Engine (GKE) depende do Compute Engine. Quando o Compute Engine é restrito, o GKE também é restrito.

Disponibilidade do console do Google Cloud

Os serviços restritos no console do Google Cloud se comportam da seguinte maneira:

  • Não é possível navegar até um produto usando o menu .
  • Os serviços restritos não aparecem nos resultados de pesquisa do console do Google Cloud.
  • Quando você navega até a página do console do Google Cloud de um serviço restrito, como de um link ou favorito, uma mensagem de erro é exibida.

Como usar a restrição "Restringir o uso do serviço de recurso"

As restrições de política da organização podem ser definidas no nível da organização, da pasta e do projeto. Cada política se aplica a todos os recursos na hierarquia de recursos correspondente, mas pode ser substituída em níveis mais baixos na hierarquia de recursos.

Para mais informações sobre avaliação de política, consulte Noções básicas sobre avaliação de hierarquia.

Como definir a política da organização

Para definir, alterar ou excluir uma política da organização, você precisa ter o papel Administrador da Política da organização.

Console

Para definir uma política da organização que inclua uma restrição Restringir o uso do serviço de recurso, faça o seguinte:

  1. No console do Google Cloud, acesse a página Políticas da organização.

    Acessar as políticas da organização

  2. No seletor de projeto, escolha o recurso em que você quer definir a política da organização.

  3. Na tabela de políticas da organização, selecione Restringir o uso do serviço de recurso.

  4. Clique em Gerenciar política.

  5. Em Aplicável a, selecione Substituir a política do recurso pai.

  6. Em Aplicação da política, escolha como aplicar a herança a essa política.

    1. Se você quiser herdar a política da organização do recurso pai e mesclá-lo com este, selecione Mesclar com pai.

    2. Se você quiser modificar as políticas da organização existentes, selecione Substituir.

  7. Clique em Adicionar uma regra.

  8. Em Valores da política, selecione Personalizada.

  9. Em Tipo de política, selecione Negar para a lista de proibições ou Permitir para a lista de permissões.

  10. Em Valores personalizados, adicione o serviço que você quer bloquear ou permitir à lista.

    1. Por exemplo, para bloquear o Cloud Storage, insira storage.googleapis.com.

    2. Para adicionar mais serviços, clique em Adicionar valor.

  11. Para aplicar a política, clique em Definir política.

gcloud

As políticas da organização podem ser definidas pela Google Cloud CLI. Para aplicar uma política da organização que inclua a restrição Restringir o uso do serviço de recursos, primeiro crie um arquivo YAML com a política a ser atualizada:

name: organizations/ORGANIZATION_ID/policies/gcp.restrictServiceUsage
spec:
   rules:
   - values:
       deniedValues:
       - file.googleapis.com
       - bigquery.googleapis.com
       - storage.googleapis.com

Substitua ORGANIZATION_ID pelo ID do recurso da organização. Para definir essa política em um recurso, execute o seguinte comando:

gcloud beta resource-manager org-policies set-policy \
  --project='PROJECT_ID' /tmp/policy.yaml

Substitua PROJECT_ID pelo ID do projeto do recurso em que você quer aplicar essa política da organização.

Para saber mais sobre o uso de restrições nas políticas da organização, consulte Usando restrições.

Como restringir recursos sem tag

Você pode usar tags e políticas condicionais da organização para restringir quaisquer recursos que não estejam usando uma tag específica. Se você definir uma política da organização em um recurso que restringe serviços e a tornar condicional à presença de uma tag, nenhum recurso filho descendente desse recurso poderá ser usado, a menos que tenha sido marcado. Dessa forma, os recursos precisam ser configurados de acordo com seu plano de governança antes de serem usados.

Para restringir recursos de organização, pasta ou projeto sem tag, é possível usar o operador lógico ! em uma consulta condicional ao criar a política da organização.

Por exemplo, para permitir o uso de sqladmin.googleapis.com somente em projetos que tenham a tag sqladmin=enabled, crie uma política da organização que negue sqladmin.googleapis.com em projetos que não tenham a tag sqladmin=enabled.

  1. Crie uma tag que identifique se os recursos tiveram a governança adequada aplicada. Por exemplo, é possível criar uma tag com a chave sqlAdmin e o valor enabled para designar o recurso que permite o uso da API Cloud SQL Admin. Exemplo:

    Como criar uma chave e um valor de tag

  2. Clique no nome da tag recém-criada. Nas próximas etapas, você vai precisar do nome com namespace da chave de tag, listado em Caminho da chave da tag, para criar uma condição.

  3. Crie uma política da organização Restringir o uso do serviço de recursos no nível do recurso da organização para negar acesso à API Cloud SQL Admin. Exemplo:

    Como criar uma política da organização para restringir recursos

  4. Adicione uma condição à política da organização acima, especificando que a política será aplicada se a tag de governança não estiver presente. O operador lógico NOT não é compatível com o criador de condições. Portanto, essa condição precisa ser criada no editor de condições. Exemplo:

    Como criar uma política condicional da organização

    !resource.matchTag("012345678901/sqlAdmin", "enabled")

Agora, a tag sqlAdmin=enabled precisa ser anexada ou herdada por um projeto para que os desenvolvedores possam usar a API Cloud SQL Admin com ele.

Para mais informações sobre como criar políticas condicionais da organização, consulte Como definir uma política da organização com tags.

Criar uma política da organização no modo de teste

Uma política da organização no modo de teste é um tipo de política em que as violações são registradas em auditoria, mas as ações em violação não são negadas. É possível criar uma política da organização no modo de teste usando a restrição Restringir o uso do serviço de recursos para monitorar como isso afetaria a organização antes de aplicar a política ativa. Para mais informações, consulte Criar uma política da organização no modo de teste.

Mensagem de erro

Se você definir uma política da organização para negar o serviço A na hierarquia do recurso B, quando um cliente tentar usar o serviço A na hierarquia do recurso B, a operação falhará. Um erro é retornado descrevendo o motivo dessa falha. Além disso, uma entrada AuditLog é gerada para monitoramento, alerta ou depuração.

Exemplo de mensagem de erro

Request is disallowed by organization's constraints/gcp.restrictServiceUsage
constraint for projects/PROJECT_ID attempting to use service
storage.googleapis.com.

Exemplo de registros de auditoria do Cloud

Captura de tela do exemplo do registro de auditoria