Ce document est destiné aux propriétaires de projets et aux administrateurs d'organisation souhaitant une protection renforcée contre la suppression de projets.
Vous pouvez placer un privilège sur un projet pour en bloquer la suppression jusqu'à ce que vous supprimiez le privilège. Cela peut être utile pour protéger des projets particulièrement importants.
Les privilèges peuvent également être placés automatiquement sur un projet. Par exemple, si vous autorisez que les comptes de service IAM (Identity and Access Management) d'un projet soient associés à des ressources dans d'autres projets, un privilège est placé sur le projet où se trouvent les comptes de service.
La CLI gcloud est le moyen le plus simple d'interagir avec les privilèges du projet. Si vous ne l'avez pas installé, vous pouvez utiliser Google Cloud Shell.
Placer un privilège sur un projet
Pour placer un privilège sur un projet, un utilisateur doit disposer de l'autorisation resourcemanager.projects.updateLiens
qui est accordée par les rôles roles/owner
et roles/resourcemanager.lienModifier
.
gcloud alpha resource-manager liens create \
--restrictions=resourcemanager.projects.delete \
--reason="Super important production system"
Les paramètres disponibles pour liens create
sont les suivants :
--project
: projet auquel le privilège s'applique.--restrictions
: liste des autorisations IAM à bloquer, séparées par des virgules.--reason
: description lisible des raisons pour lesquelles ce privilège existe.--origin
: chaîne courte indiquant l'utilisateur ou le système à l'origine du privilège. Ce paramètre est requis, mais s'il est omis, l'outil gcloud le remplit automatiquement avec l'adresse e-mail de l'utilisateur.
À l'heure actuelle, la seule restriction valide pour un projet est resourcemanager.projects.delete
.
Répertorier les privilèges d'un projet
Pour répertorier les privilèges appliqués à un projet, un utilisateur doit disposer de l'autorisation resourcemanager.projects.get
. Exécutez la commande gcloud liens list
.
gcloud alpha resource-manager liens list
Voici un exemple de résultat que peut générer cette commande :
gcloud alpha resource-manager liens list
NAME ORIGIN REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7 user@example.com testing
Supprimer les privilèges d'un projet
Pour supprimer un privilège d'un projet, un utilisateur doit disposer de l'autorisation resourcemanager.projects.updateLiens
qui est accordée par roles/owner
et roles/resourcemanager.lienModifier
.
gcloud alpha resource-manager liens delete [LIEN_NAME]
où :
- [LIEN_NAME] correspond au nom du privilège à supprimer.
Références
Documents de référence sur les API : Ressource REST : privilèges