Créer et gérer des tags pour les ressources VPC

Les réseaux VPC utilisent les ressources suivantes qui sont compatibles avec les tags Resource Manager :

Les tags Resource Manager sont différents des tags réseau. Dans ce document, le terme tags désigne les tags Resource Manager.

Pour obtenir la liste de tous les services compatibles avec les tags, consultez la page Services compatibles avec les tags.

Pour en savoir plus sur l'utilisation des tags dans les règles de stratégie de pare-feu, consultez la section Tags pour les pare-feu.

À 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.

Pour regrouper des ressources VPC au sein du cloud privé virtuel à des fins d'automatisation et de facturation, utilisez des étiquettes. Les tags et les étiquettes fonctionnent indépendamment les uns des autres. Vous pouvez appliquer les deux aux ressources.

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 que compute.instances.createTagBinding pour les instances Compute Engine
    • Autorisation deleteTagBinding spécifique à la ressource, telle que compute.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 associer des tags aux ressources VPC, vous devez disposer du rôle Administrateur de réseaux Compute (roles/compute.networkAdmin).

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 un tag à une ressource VPC

Une fois le tag créé, vous devez l'associer à une ressource VPC.

gcloud

Pour associer un tag à une ressource VPC, 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 \
          --location=LOCATION
      

Remplacez les éléments suivants :

  • TAGVALUE_NAME est l'ID permanent ou le nom d'espace de noms de la valeur de tag associée. Par exemple, tagValues/567890123456.
  • RESOURCE_ID est l'ID complet de la ressource, avec le nom de domaine de l'API permettant de déterminer le type de ressource (//compute.googleapis.com/). Vous devez utiliser les ID numériques des ressources, et non leurs noms. Par exemple, un ID de sous-réseau présente un format semblable à celui-ci : //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Un ID réseau possède un format semblable à celui-ci : //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION : emplacement de votre ressource. Si vous associez un tag à une ressource globale, par exemple un dossier ou un projet, vous devez omettre cette option. Si vous associez un tag à une ressource régionale ou zonale, vous devez spécifier l'emplacement, par exemple us-central1 (région) ou us-central1-a (zone).

Lister les tags associés à une ressource VPC

Vous pouvez afficher une liste de liaisons de tags directement associées à la ressource VPC ou dont celle-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 \
          --location=LOCATION
      

Remplacez les éléments suivants :

  • RESOURCE_ID est l'ID complet de la ressource, avec le nom de domaine de l'API permettant de déterminer le type de ressource (//compute.googleapis.com/). Vous devez utiliser les ID numériques des ressources, et non leurs noms. Par exemple, un ID de sous-réseau présente un format semblable à celui-ci : //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Un ID réseau possède un format semblable à celui-ci : //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION : emplacement de votre ressource. Si vous affichez un tag associé à une ressource globale, telle qu'un dossier ou un projet, vous devez omettre cette option. Si vous affichez un tag associé à une ressource régionale ou zonale, vous devez spécifier l'emplacement, par exemple us-central1 (région) ou us-central1-a (zone).

Vous devriez obtenir un résultat semblable à celui-ci :

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
          tagValue: tagValues/567890123456
          resource: //compute.googleapis.com/projects/7890123456/subnetworks/subnetwork-ID
      

Dissocier des tags d'une ressource VPC

Vous pouvez dissocier les tags qui ont été directement associés à une ressource VPC. 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 \
          --location=LOCATION
      

Remplacez les éléments suivants :

  • TAGVALUE_NAME est l'ID permanent ou le nom d'espace de noms de la valeur de tag associée. Par exemple, tagValues/567890123456.
  • RESOURCE_ID est l'ID complet de la ressource, avec le nom de domaine de l'API permettant de déterminer le type de ressource (//compute.googleapis.com/). Vous devez utiliser les ID numériques des ressources, et non leurs noms. Par exemple, un ID de sous-réseau présente un format semblable à celui-ci : //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Un ID réseau possède un format semblable à celui-ci : //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION : emplacement de votre ressource. Si vous associez un tag à une ressource globale, par exemple un dossier ou un projet, vous devez omettre cette option. Si vous associez un tag à une ressource régionale ou zonale, vous devez spécifier l'emplacement, par exemple us-central1 (région) ou us-central1-a (zone).

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é de la ressource VPC. 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