Ce guide explique comment créer et gérer des tags pour les ressources de compte de service.
À propos des tags
Un tag est une paire clé-valeur qui peut être associée à une ressource dans Google Cloud. Vous pouvez utiliser des tags pour autoriser ou refuser de manière conditionnelle les règles selon qu'une ressource dispose ou non d'un tag spécifique. Par exemple, vous pouvez attribuer des rôles IAM (Identity and Access Management) de manière conditionnelle selon qu'une ressource est associée à un tag spécifique. Pour en savoir plus sur les tags, consultez la page Présentation des tags.
Les tags sont associés à des ressources en créant une ressource de liaison de tag qui associe la valeur à la ressource Google Cloud.
Autorisations requises
Les autorisations dont vous avez besoin dépendent de l'action que vous devez effectuer.
Pour obtenir ces autorisations, demandez à votre administrateur d'attribuer le rôle suggéré au niveau approprié de la hiérarchie des ressources.
Afficher les tags
Pour afficher les définitions de tag et les tags associés aux ressources, vous devez disposer du rôle Lecteur de tags (roles/resourcemanager.tagViewer
) ou d'un autre rôle comprenant les autorisations suivantes :
Autorisations requises
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.tagValues.list
resourcemanager.tagValues.get
listTagBindings
pour le type de ressource approprié. Par exemple,compute.instances.listTagBindings
pour afficher les tags associés aux instances Compute Engine.listEffectiveTags
pour le type de ressource approprié.
Par exemple,
compute.instances.listEffectiveTags
pour afficher tous les tags associés aux instances Compute Engine ou dont celles-ci ont hérité.
Pour afficher les tags au niveau de l'organisation, vous devez disposer du rôle Lecteur d'organisation (roles/resourcemanager.organizationViewer
) sur la ressource Organisation.
Administrer les tags
Pour créer, mettre à jour et supprimer des définitions de tag, vous devez disposer du rôle Administrateur de tags (roles/resourcemanager.tagAdmin
) ou d'un autre rôle comprenant les autorisations suivantes :
Autorisations requises
resourcemanager.tagKeys.create
resourcemanager.tagKeys.update
resourcemanager.tagKeys.delete
resourcemanager.tagKeys.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.getIamPolicy
resourcemanager.tagKeys.setIamPolicy
resourcemanager.tagValues.create
resourcemanager.tagValues.update
resourcemanager.tagValues.delete
resourcemanager.tagValues.list
resourcemanager.tagValues.get
resourcemanager.tagValues.getIamPolicy
resourcemanager.tagValues.setIamPolicy
Pour administrer les tags au niveau de l'organisation, vous devez disposer du rôle Lecteur d'organisation (roles/resourcemanager.organizationViewer
) sur la ressource Organisation.
Gérer les tags sur les ressources
Pour ajouter et supprimer des tags associés à des ressources, vous devez disposer du rôle Utilisateur de tags (roles/resourcemanager.tagUser
) ou d'un autre rôle doté d'autorisations équivalentes sur la valeur de tag et sur la ressource à laquelle vous associez la valeur de tag. Le rôle Utilisateur de tags inclut les autorisations suivantes :
Autorisations requises
- Autorisations requises pour la ressource à laquelle vous associez la valeur de tag
- Autorisation
createTagBinding
spécifique à la ressource, telle quecompute.instances.createTagBinding
pour les instances Compute Engine - Autorisation
deleteTagBinding
spécifique à la ressource, telle quecompute.instances.deleteTagBinding
pour les instances Compute Engine - Autorisations requises pour la valeur du tag :
resourcemanager.tagValueBindings.create
resourcemanager.tagValueBindings.delete
- Autorisations vous permettant d'afficher les projets et les définitions de tags :
resourcemanager.tagValues.get
resourcemanager.tagValues.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.projects.get
Pour obtenir les autorisations nécessaires pour associer des tags à des comptes de service, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de compte de service (roles/iam.ServiceAccountAdmin
) sur le compte de service.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Créer des clés et des valeurs de tags
Avant de pouvoir associer un tag, vous devez d'abord créer un tag et configurer sa valeur. Pour créer des clés et des valeurs de tags, consultez les sections Créer un tag et Ajouter une valeur de tag.
Associer une balise à un compte de service
Une fois la balise créée, vous devez l'associer à un compte de service.
gcloud
Pour associer un tag à un compte de service, vous devez créer une ressource de liaison de tag à l'aide de la commande gcloud resource-manager tags bindings create
:
gcloud resource-manager tags bindings create \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Remplacez les éléments suivants :
TAGVALUE_NAME
: ID permanent ou nom d'espace de noms de la valeur de tag associée. Par exemple,tagValues/567890123456
.-
RESOURCE_ID
: ID unique ou adresse e-mail du compte de service, avec le nom de domaine de l'API (//iam.googleapis.com/
). Par exemple, l'ID complet d'un compte de service avec l'ID unique1029384756
dans le projettest-project
est//iam.googleapis.com/projects/test-project/serviceAccounts/1029384756
.
Lister les balises associées à un compte de service
Vous pouvez afficher une liste de liaisons de tags directement associées au compte de service ou dont celui-ci a hérité.
gcloud
Pour obtenir la liste des liaisons de tags associées à une ressource, exécutez la commande gcloud resource-manager tags bindings list
:
gcloud resource-manager tags bindings list \ --parent=RESOURCE_ID
Remplacez les éléments suivants :
-
RESOURCE_ID
: ID unique ou adresse e-mail du compte de service, avec le nom de domaine de l'API (//iam.googleapis.com/
). Par exemple, l'ID complet d'un compte de service avec l'ID unique1029384756
dans le projettest-project
est//iam.googleapis.com/projects/test-project/serviceAccounts/1029384756
.
Vous devriez obtenir un résultat semblable à celui-ci :
name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456 tagValue: tagValues/567890123456 resource: //iam.googleapis.com/projects/test-project/serviceAccounts/1029384756
Dissocier des balises d'un compte de service
Vous pouvez dissocier les tags qui ont été directement associés à un compte de service. Les tags hérités peuvent être remplacés en associant un tag ayant la même clé et une valeur différente, mais ils ne peuvent pas être dissociés. Avant de pouvoir supprimer un tag, vous devez dissocier sa clé et ses valeurs de chaque ressource à laquelle il est associé.
gcloud
Pour supprimer une liaison de tag, exécutez la commande gcloud resource-manager tags bindings delete
:
gcloud resource-manager tags bindings delete \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Remplacez les éléments suivants :
TAGVALUE_NAME
: ID permanent ou nom d'espace de noms de la valeur de tag associée. Par exemple,tagValues/567890123456
.-
RESOURCE_ID
: ID unique ou adresse e-mail du compte de service, avec le nom de domaine de l'API (//iam.googleapis.com/
). Par exemple, l'ID complet d'un compte de service avec l'ID unique1029384756
dans le projettest-project
est//iam.googleapis.com/projects/test-project/serviceAccounts/1029384756
.
Supprimer des clés et des valeurs de tags
Lorsque vous supprimez une clé ou une définition de valeur de tag, assurez-vous que le tag est dissocié du compte de service. Vous devez supprimer les rattachements de tag existants, appelés liaisons de tags, avant de supprimer la définition de tag elle-même. Pour supprimer des clés et des valeurs de tags, consultez la section Supprimer des tags.
Conditions et tags Identity and Access Management
Vous pouvez utiliser des tags et des conditions IAM pour attribuer des liaisons de rôles de manière conditionnelle aux utilisateurs dans votre hiérarchie. La modification ou la suppression du tag associé à une ressource peut supprimer l'accès des utilisateurs à cette ressource, si une stratégie IAM avec des liaisons de rôle conditionnelles a été appliquée. Pour en savoir plus, consultez la section Conditions et tags Identity and Access Management.
Étapes suivantes
- Consultez les autres services compatibles avec les tags.
- Consultez la section Tags et contrôle des accès pour apprendre à utiliser les tags avec IAM.