Nesta página, você terá uma visão geral da restrição de política da organização Restringir o uso do serviço de recursos, que permite que os administradores corporativos controlem 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 um recurso de organização, pasta ou 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 os produtos do Google Cloud, como Identity and Access Management (IAM), Cloud Logging e 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.
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 é aplicada imediatamente a todo o acesso a todos os recursos no escopo da política, com consistência posterior.
Recomendamos que os administradores gerenciem cuidadosamente as atualizações nas políticas da organização que contenham essa restrição. É possível lançar essa alteração de política com mais segurança usando tags para aplicar condicionalmente a restrição. 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 dependência direta do serviço restrito também são restritos. Isso é válido apenas para serviços que gerenciam os mesmos recursos de clientes. Por exemplo, o Google Kubernetes Engine (GKE) depende do Compute Engine. Quando o Compute Engine está restrito, o GKE também fica restrito.
Como usar a restrição "Restringir o uso do serviço de recurso"
As restrições da 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 dentro da hierarquia 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:
- Acesse a página "Políticas da organização" no Console do Google Cloud.
Acessar as políticas da organização
No seletor de projetos, na parte superior da tela, escolha o recurso para o qual você quer definir a política.
Na tabela de políticas da organização, selecione Restringir o uso do serviço de recurso.
Clique em Editar.
Em É aplicável a, selecione Personalizar.
Em Aplicação da política, escolha como aplicar a herança a essa política.
Se você quiser herdar a política da organização do recurso pai e mesclá-lo com este, selecione Mesclar com pai.
Se você quiser modificar as políticas da organização existentes, selecione Substituir.
Em Valores da política, selecione Personalizada.
Em Tipo de política, selecione Negar para a lista de proibições ou Permitir para a lista de permissões.
Em Valores personalizados, adicione o serviço que você quer bloquear ou permitir à lista.
Por exemplo, para bloquear o Cloud Storage, insira
storage.googleapis.com
.Para adicionar mais serviços, clique em Novo valor da política.
No lado direito da página, revise o resumo da política.
Para aplicar a política, clique em Salvar.
gcloud
As políticas da organização podem ser definidas com a 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 tags
Use tags e políticas condicionais da organização para restringir todos os recursos que não estejam usando uma tag específica. Se você definir uma política da organização em um recurso que restrinja serviços e torná-la condicional à presença de uma tag, nenhum recurso filho 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 tags, use 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
apenas em projetos
que tenham a tag sqladmin=enabled
, crie uma política da organização que
nega sqladmin.googleapis.com
em projetos que não têm a tag
sqladmin=enabled
.
Crie uma tag que identifique se os recursos tiveram a governança adequada aplicada. Por exemplo, crie uma tag com a chave
sqlAdmin
e o valorenabled
para designar que esse recurso permite o uso da API Cloud SQL Admin. Exemplo: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.
Crie uma política da organização Restringir o uso do serviço de recursos no nível do recurso da sua organização para negar acesso à API Cloud SQL Admin. Exemplo:
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 integrada no editor de condições. Exemplo:
!resource.matchTag("012345678901/sqlAdmin", "enabled")
Agora, a tag sqlAdmin=enabled
precisa ser anexada ou herdada por um projeto, antes que os desenvolvedores possam usar a API Cloud SQL Admin com esse projeto.
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 de simulação
Uma política da organização de simulação é um tipo de política em que as violações da política são registradas, mas as ações com violações não são negadas. É possível criar uma política da organização de simulação 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 de simulação.
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.