Proteggere i progetti con blocchi

Questo documento è rivolto ai proprietari di progetti e agli amministratori di organizzazioni che vogliono proteggere i progetti dall'eliminazione.

Puoi impostare un blocco su un progetto per impedirne l'eliminazione finché non lo rimuovi. Questa operazione può essere utile per proteggere i progetti di particolare importanza.

I blocchi possono essere applicati a un progetto anche automaticamente. Ad esempio, se consenti che i service account di Identity and Access Management (IAM) di un progetto vengano collegati alle risorse di altri progetti, viene impostato un blocco sul progetto in cui si trovano i service account.

Prima di iniziare

L'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 Modificatore del blocco del progetto (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 include 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 di un progetto: resourcemanager.projects.get

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

Imposta un blocco su un progetto

Per impostare un blocco su 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 delle autorizzazioni IAM da bloccare. L'unica restrizione valida per un progetto è resourcemanager.projects.delete.
  • LIEN_REASON: descrizione leggibile da una persona del motivo per cui esiste questo blocco. Inserisci questa descrizione tra virgolette doppie. 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 se omesso viene compilato automaticamente con l'indirizzo email dell'utente.

Elenca i blocchi di 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

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: liens