Proteger projetos com garantias

É possível usar as garantias de projeto do Cloud de Confiance by S3NS para impedir que projetos críticos sejam excluídos de maneira acidental ou mal-intencionada. Uma garantia impede que qualquer pessoa exclua um projeto até que um Administrador da organização ou Proprietário do projeto a remova.

OCloud de Confiance também pode aplicar garantias automaticamente para proteger seus recursos. Por exemplo, se você anexar uma conta de serviço de um projeto a um recurso em um projeto diferente,o Cloud de Confiance vai colocar uma garantia no projeto que possui a conta de serviço do Identity and Access Management (IAM) para evitar dependências corrompidas.

Antes de começar

A CLI gcloud é a maneira mais fácil de interagir com garantias de projeto. Se você não tiver a ferramenta instalada, use o Google Cloud Shell.

Funções exigidas

Para receber as permissões necessárias para modificar garantias, peça ao administrador para conceder a você o papel do IAM de Modificador de garantia do projeto (roles/resourcemanager.lienModifier) nos projetos. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esse papel predefinido contém as permissões necessárias para modificar garantias. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para modificar garantias:

  • resourcemanager.projects.updateLiens
  • Liste as garantias em um projeto: resourcemanager.projects.get

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Colocar uma garantia em um projeto

Para colocar uma garantia em um projeto, use o comando alpha resource-manager liens create.

gcloud alpha resource-manager liens create \
    --project=PROJECT_ID \
    --restrictions=resourcemanager.projects.delete \
    --reason=LIEN_REASON \
    --origin=LIEN_ORIGIN

Substitua:

  • PROJECT_ID: ID do projeto ao qual a garantia se aplica.
  • LIEN_REASON: descrição legível por humanos do motivo da existência dessa garantia. Coloque essa descrição entre aspas duplas. Exemplo: "This project is protected by a lien".
  • LIEN_ORIGIN: string que indica o usuário ou sistema que originou a garantia. É um campo obrigatório, mas será preenchido automaticamente com o endereço de e-mail do usuário se for omitido.

Listar garantias em um projeto

Para listar todas as garantias aplicadas a um projeto, use o comando alpha resource-manager liens list.

gcloud alpha resource-manager liens list

O resultado será o seguinte:

NAME                                                  ORIGIN            REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7  user@example.com  testing

Remover garantias de um projeto

Para remover uma garantia de um projeto, use o comando alpha resource-manager liens delete.

gcloud alpha resource-manager liens delete LIEN_NAME

Substitua LIEN_NAME pelo nome da garantia a ser excluída, como p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7.

Referências

Referência da API: Recurso REST: garantias