Protezione dei progetti con blocchi

Questo documento è rivolto ai proprietari di progetti e agli amministratori dell'organizzazione che vogliono aggiungere protezioni contro l'eliminazione del progetto.

Puoi applicare un blocco su un progetto per bloccarne l'eliminazione finché non lo rimuovi. Può essere utile per proteggere i progetti di particolare importanza.

Inoltre, è possibile applicare automaticamente dei blocchi su un progetto. Ad esempio, se consenti di collegare gli account di servizio Identity and Access Management (IAM) di un progetto alle risorse di altri progetti, viene applicato un blocco al progetto in cui si trovano gli account di servizio.

Prima di iniziare

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

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per modificare i blocchi, chiedi all'amministratore di concederti il ruolo IAM Modificatore di blocco del progetto (roles/resourcemanager.lienModifier) sui progetti. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per modificare i blocchi. Per visualizzare esattamente le autorizzazioni necessarie, 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 riuscire a ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.

Fissare un blocco 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=[PERMISSION_RESTRICTION] \
  --reason=[LIEN_REASON] \
  --origin=[LIEN_ORIGIN]

Sostituisci quanto segue:

  • [PROJECT_ID]: ID del progetto a cui si applica il blocco.
  • [PERMISSION_RESTRICTION]: elenco separato da virgole di autorizzazioni IAM da bloccare. L'unica limitazione valida per un progetto è resourcemanager.projects.delete.
  • [LIEN_REASON]: descrizione leggibile del motivo per cui esiste questo blocco. Inserisci la descrizione tra virgolette. Esempio: "This project is protected by a lien".
  • [LIEN_ORIGIN]: stringa che indica l'utente o il sistema che ha creato il blocco. È un campo obbligatorio, ma viene compilato automaticamente con l'indirizzo email dell'utente se omesso.

Elenco dei 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:

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

Rimozione dei 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 liens/p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7.

Riferimenti

Riferimento API: Risorsa REST: blocchi