Gérer des projets client

Cette page explique comment créer, retirer et supprimer des projets locataires.

L'API Service Consumer Management permet de créer et configurer des projets locataires Google Cloud pour héberger les ressources de vos services gérés allouées à un client de service unique. Chaque projet locataire est associé à une unité de location.

Une unité de location peut contenir plusieurs projets locataires, chacun doté d'un identifiant tag: string que vous pouvez utiliser pour indiquer l'objectif du projet et y faire référence lors de la désactivation.

Après la création, un projet locataire n'est plus qu'un projet Google Cloud de votre organisation. Vous pouvez l'utiliser avec n'importe quel outil de gestion, comme vous le feriez habituellement pour un projet Google Cloud.

Créer un projet locataire

Pour créer un projet locataire et l'ajouter à une unité de location, appelez la méthode services.tenancyUnits.addProject.

L'exemple suivant ajoute un nouveau projet locataire avec le tag tag1 à une unité de location à l'aide de l'API REST :

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

L'appel inclut les informations suivantes :

{"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"}}}

Cet appel renvoie une opération de longue durée que vous pouvez interroger pour vérifier si le projet a été créé avec succès.

Le nouveau projet locataire est configuré avec un privilège, c'est-à-dire une propriété définie sur le projet locataire afin d'éviter toute suppression accidentelle. Vous devez appeler la méthode services.tenancyUnits.removeProject pour débloquer le privilège et supprimer le projet. Il est déconseillé de contourner cette protection.

Le projet locataire est créé dans le dossier que vous avez spécifié lors de l'installation et de la configuration. Une fois le projet créé, il est déconseillé de le déplacer dans un autre dossier.

Le compte de service de l'API Service Consumer Management est le créateur et propriétaire des projets locataires, en plus des autres propriétaires spécifiés dans la configuration de projet locataire. Il est déconseillé de supprimer ce compte en tant que propriétaire.

Dans certains cas, vous pouvez être amené à mettre à jour un projet Google Cloud existant pour en faire un projet locataire plutôt que de créer un projet locataire. Pour ajouter un projet Google Cloud existant à une unité de location, appelez la méthode services.tenancyUnits.attachProject.

Supprimer un projet locataire

Pour supprimer un projet de locataire portant le tag abc, appelez la méthode services.tenancyUnits.removeProject comme illustré dans l'exemple suivant :

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

L'appel inclut les informations suivantes :

{"tag":"abc"}

Cette opération supprime le privilège du projet, le projet et toutes les ressources qu'il contient, ainsi que toutes les métadonnées associées de l'unité de location.

Cette opération supprime le projet et toutes les métadonnées associées de l'unité de location. Si vous souhaitez supprimer le projet tout en gardant une trace de celui-ci, appelez la méthode services.tenancyUnits.deleteProject. Cette méthode supprime le projet mais conserve les métadonnées en les annotant avec l'état DELETED. Pour annuler la suppression d'un projet supprimé, appelez la méthode services.tenancyUnits.undeleteProject.