Protezione dei progetti con blocchi

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

Puoi inserire un blocco su un progetto per bloccarne l'eliminazione fino a quando non lo rimuovi. Questo può essere utile per proteggere i progetti di particolare importanza.

I blocchi possono anche essere applicati automaticamente a un progetto. Ad esempio, se consenti il collegamento degli account di servizio Identity and Access Management (IAM) di un progetto a 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 sui 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 blocco 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 le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:

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 essere in grado di ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.

Bloccare un progetto

Per inserire un blocco su un progetto, usa 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 dell'esistenza di 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 originato 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: liens