Vous pouvez utiliser les privilèges de projet Google Cloud pour protéger les projets critiques contre toute suppression accidentelle ou malveillante. Un privilège empêche quiconque de supprimer un projet tant qu'un administrateur de l'organisation ou un propriétaire du projet ne l'a pas supprimé.
Google Cloud peut également appliquer automatiquement des privilèges pour protéger vos ressources. Par exemple, si vous associez un compte de service d'un projet à une ressource d'un autre projet, Google Cloud place un privilège sur le projet propriétaire du compte de service IAM (Identity and Access Management) pour éviter les dépendances non fonctionnelles.
Avant de commencer
La gcloud CLI est le moyen le plus simple d'interagir avec les privilèges de projet. Si vous ne l'avez pas installé, vous pouvez utiliser Google Cloud Shell.
Rôles requis
Pour obtenir les autorisations nécessaires pour modifier des privilèges, demandez à votre administrateur de vous accorder le rôle IAM Modificateur de privilèges de projet (roles/resourcemanager.lienModifier) sur les projets.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour modifier les privilèges. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour modifier des privilèges :
-
resourcemanager.projects.updateLiens -
Répertoriez les privilèges d'un projet :
resourcemanager.projects.get
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Placer un privilège sur un projet
Pour placer un privilège sur un projet, utilisez la commande alpha resource-manager liens create.
gcloud alpha resource-manager liens create \ --project=PROJECT_ID \ --restrictions=resourcemanager.projects.delete \ --reason=LIEN_REASON \ --origin=LIEN_ORIGIN
Remplacez les éléments suivants :
- PROJECT_ID : ID du projet auquel le privilège s'applique.
- LIEN_REASON : description lisible par l'humain de la raison pour laquelle ce privilège existe. Placez cette description entre guillemets doubles. Exemple :
"This project is protected by a lien". - LIEN_ORIGIN : chaîne indiquant l'utilisateur ou le système à l'origine du privilège. Il s'agit d'un champ obligatoire, mais il est automatiquement renseigné avec l'adresse e-mail de l'utilisateur s'il est omis.
Lister les privilèges d'un projet
Pour lister tous les privilèges appliqués à un projet, utilisez la commande alpha resource-manager liens list.
gcloud alpha resource-manager liens list
Le résultat ressemble à ce qui suit :
NAME ORIGIN REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7 user@example.com testing
Supprimer des privilèges d'un projet
Pour supprimer un privilège d'un projet, utilisez la commande alpha resource-manager liens delete.
gcloud alpha resource-manager liens delete LIEN_NAME
Remplacez LIEN_NAME par le nom du privilège à supprimer, par exemple p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7.
Références
Documentation de référence de l'API : Ressource REST : liens