Proteggere i progetti con blocchi

Puoi utilizzare i vincoli di progetto Google Cloud per proteggere i progetti critici dall'eliminazione accidentale o dannosa. Un blocco impedisce a chiunque di eliminare un progetto finché un Organization Administrator o un Project Owner non lo rimuove.

Google Cloud può anche applicare automaticamente i blocchi per proteggere le tue risorse. Ad esempio, se colleghi un service account di un progetto a una risorsa in un altro progetto, Google Cloud inserisce un blocco nel progetto proprietario del account di servizio Identity and Access Management (IAM) per evitare interruzioni delle dipendenze.

Prima di iniziare

gcloud CLI è il modo più semplice per interagire con i blocchi dei progetti. Se non l'hai installata, puoi utilizzare Google Cloud Shell.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per modificare i blocchi, chiedi all'amministratore di concederti il ruolo IAM Project lien modifier (roles/resourcemanager.lienModifier) sui progetti. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per modificare i blocchi. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per modificare i blocchi sono necessarie le seguenti autorizzazioni:

  • resourcemanager.projects.updateLiens
  • Elenca i blocchi su un progetto: resourcemanager.projects.get

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Inserisci un blocco d'autore su un progetto

Per applicare un blocco a un progetto, utilizza il 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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto a cui si applica il blocco.
  • LIEN_REASON: descrizione leggibile del motivo per cui esiste questo blocco. Inserisci questa descrizione tra virgolette. Esempio: "This project is protected by a lien".
  • LIEN_ORIGIN: stringa che indica l'utente o il sistema che ha generato il blocco. È un campo obbligatorio, ma se viene omesso viene compilato automaticamente con l'indirizzo email dell'utente.

Elenca i blocchi su un progetto

Per elencare tutti i blocchi applicati a un progetto, utilizza il comando alpha resource-manager liens list.

gcloud alpha resource-manager liens list

L'output è simile al seguente:

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

Rimuovi i blocchi da un progetto

Per rimuovere un blocco da un progetto, utilizza il comando alpha resource-manager liens delete.

gcloud alpha resource-manager liens delete LIEN_NAME

Sostituisci LIEN_NAME con il nome del blocco da eliminare, ad esempio p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7.

Riferimenti

Riferimento API: Risorsa REST: blocchi