Gestione dei progetti tenant

In questa pagina viene descritto come creare, rimuovere ed eliminare i progetti tenant.

Puoi utilizzare l'API Service Consumer Management per creare e configurare progetti tenant, progetti Google Cloud utilizzati per ospitare le risorse del tuo servizio gestito dedicate a un singolo consumer di servizi. Ogni progetto tenant è associato a un'unità di tenancy.

Un'unità di tenancy può contenere più progetti tenant, a ciascuno dei quali è assegnato un identificatore tag: string utilizzabile per indicare lo scopo del progetto e farvi riferimento durante il deprovisioning.

Dopo la creazione, un progetto tenant non è altro che un progetto Google Cloud nella tua organizzazione. Puoi utilizzare qualsiasi strumento di gestione per lavorarci, come faresti normalmente per il progetto Google Cloud.

Creazione di un progetto tenant

Per creare un progetto tenant e aggiungerlo a un'unità di tenancy, chiama il metodo services.tenancyUnits.addProject.

Nell'esempio seguente viene aggiunto un nuovo progetto tenant con il tag tag1 a un'unità di tenancy utilizzando l'API REST:

POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:addProject

La chiamata include i seguenti dati:

{"tag":"tag1", "project_config":{"folder":"folders/9876543210", "tenant_project_policy":{"policy_bindings":{"role":"roles/owner", "members":"user:bob@example.com"}}, "billing_config":{"billing_account":"billingAccounts/123456-472F22-28F9AA"}}}

Questa chiamata restituisce un'operazione a lunga esecuzione su cui puoi eseguire una query per confermare che la creazione del progetto è riuscita.

Il progetto del nuovo tenant è configurato con un blocco sul progetto, ovvero una proprietà impostata sul progetto tenant per impedirne l'eliminazione accidentale. Devi chiamare il metodo services.tenancyUnits.removeProject per rilasciare il blocco ed eliminare il progetto. Non è consigliabile bypassare questa protezione.

Il progetto tenant viene creato nella cartella specificata durante la procedura di configurazione e configurazione. Non è consigliabile spostare un progetto in un'altra cartella dopo averlo creato.

L'account di servizio dell'API Service Consumer Management è l'autore e il proprietario dei progetti tenant, oltre a qualsiasi altro proprietario specificato nella configurazione del progetto tenant. È sconsigliato rimuovere questo account come proprietario.

In alcuni casi è possibile che tu voglia aggiornare un progetto Google Cloud esistente in un progetto tenant anziché creare un nuovo progetto tenant. Per aggiungere un progetto Google Cloud esistente a un'unità di tenancy, chiama il metodo services.tenancyUnits.attachProject.

Rimozione di un progetto tenant

Per rimuovere un progetto tenant con il tag abc, chiama il metodo services.tenancyUnits.removeProject come illustrato nell'esempio seguente:

POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:removeProject

La chiamata include i seguenti dati:

{"tag":"abc"}

Questa operazione rimuove il blocco sul progetto, elimina il progetto e tutte le risorse al suo interno ed elimina tutti i metadati associati dall'unità di tenancy.

Questa operazione elimina il progetto e tutti i relativi metadati dall'unità di tenancy. Se vuoi eliminare il progetto ma conservarne una registrazione, chiama il metodo services.tenancyUnits.deleteProject. Questo metodo elimina il progetto e conserva i metadati, annotandoli con lo stato DELETED. Per annullare l'eliminazione di un progetto eliminato, chiama il metodo services.tenancyUnits.undeleteProject.