Como usar garantias para proteger projetos contra exclusão acidental

Este documento destina-se a proprietários de projetos e administradores de organizações que queiram adicionar mecanismos de proteção contra a exclusão de projetos.

Adicione uma garantia a um projeto para bloquear a exclusão dele. Ele só poderá ser excluído após a remoção da garantia. Isso é útil para proteger projetos muito importantes.

A ferramenta de linha de comando gcloud é o jeito mais fácil de interagir com as garantias de projetos. Se você não tiver a ferramenta instalada, use o Google Cloud Shell.

Como aplicar uma garantia em um projeto

Para fazer isso, o usuário precisa ter a permissão resourcemanager.projects.updateLiens, que é concedida pelos papéis roles/owner e roles/resourcemanager.lienModifier.

gcloud alpha resource-manager liens create \
  --restrictions=resourcemanager.projects.delete \
  --reason="Super important production system"

Os parâmetros disponíveis para liens create são:

  • --project: o projeto que recebe a garantia.
  • --restrictions: uma lista separada por vírgulas de permissões do IAM a serem bloqueadas.
  • --reason: uma descrição legível que explica o motivo da garantia.
  • --origin: uma string curta que indica o usuário/sistema que originou a garantia. Ela é obrigatória, mas a ferramenta gcloud a preenche automaticamente com o endereço de e-mail do usuário se não for preenchida.

No momento, a única restrição válida para projetos é resourcemanager.projects.delete.

Como listar as garantias de um projeto

Para fazer isso, o usuário precisa ter a permissão resourcemanager.projects.get. Use o comando liens list do gcloud.

gcloud alpha resource-manager liens list

Veja um exemplo de saída desse comando:

gcloud alpha resource-manager liens list
NAME                                                  ORIGIN            REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7  user@example.com  testing

Como remover garantias de um projeto

Para fazer isso, o usuário precisa ter a permissão resourcemanager.projects.updateLiens, que é concedida por roles/owner e roles/resourcemanager.lienModifier.

gcloud alpha resource-manager liens delete [LIEN_NAME]

em que:

  • [LIEN_NAME] é o nome da garantia a ser excluída.

Referências

Referência da API: Recurso REST: garantias

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Resource Manager