Dépôts de tags

Utilisez des tags pour regrouper des dépôts et d'autres ressources dans Google Cloud à des fins de création de rapports, d'audit et de contrôle des accès dans votre organisation Google Cloud.

Pour regrouper des dépôts dans Artifact Registry à des fins d'automatisation et de facturation, utilisez des étiquettes. Fonctionnement des tags et des étiquettes indépendamment les uns des autres, et que vous pouvez appliquer les deux au même dépôt. Pour pour en savoir plus sur les différences entre les tags et les étiquettes, consultez Tags et libellés :

Qu'est-ce qu'un tag ?

Les tags sont des paires clé/valeur que vous pouvez appliquer à vos ressources pour un contrôle d'accès précis.

Les administrateurs de projet créent des tags pour les ressources de Google Cloud au niveau au niveau de l'organisation et les gérer dans Resource Manager. Lorsque vous associer un tag à un dépôt Artifact Registry, vous pouvez l'utiliser avec Conditions IAM pour accorder un accès conditionnel au dépôt. Vous ne pouvez pas associer de tags à des artefacts individuels.

Gardez ces restrictions à l'esprit :

  • Les règles d'administration peuvent référencer de manière conditionnelle des tags héritées du projet parent et de niveaux supérieurs, mais ils ne sont pas compatibles avec les tags qui que vous rattachez directement aux dépôts.

  • Les journaux d'audit Cloud ne sont pas générés pour l'association de tags et l'affichage des liaisons de tags sur les dépôts.

Pour en savoir plus sur les balises et le contrôle des accès conditionnel avec balises, consultez Tags et contrôle des accès

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

Associer des tags aux dépôts

Une fois qu'un administrateur de projet a créé des tags, vous pouvez les associer à un dépôt. Chaque balise possède une clé et une valeur. Pour taguer un dépôt, vous devez associer une valeur à celui-ci.

Pour associer un tag à un dépôt:

Console

  1. Demandez à votre administrateur la valeur de balise à associer.

    Vous pouvez associer une valeur de balise à l'un de ces types d'identifiants:

    • Un nom d'espace de noms, tel que 123456789012/env/dev
    • Une pièce d'identité permanente, telle que tagValues/567890123456
  2. Ouvrez la page Dépôts de la console Google Cloud.

    Ouvrir la page "Dépôts"

  3. Sélectionnez le dépôt auquel vous souhaitez ajouter un tag.

  4. Dans la section Détails du dépôt, cliquez sur Afficher plus.

    Les balises existantes du dépôt, y compris les balises héritées, sont affichées.

  5. Cliquez sur l'icône Modifier les tags Modifier.

  6. Dans la section Tags directs, cliquez sur Sélectionner un champ d'application.

  7. Sélectionnez le projet de votre dépôt.

  8. Dans le champ Clé, saisissez du texte pour filtrer la liste des tags, puis sélectionnez la balise. .

  9. Dans le champ Valeur, saisissez du texte pour filtrer la liste des balises, puis sélectionnez la balise. .

  10. Cliquez sur Enregistrer.

  11. Cliquez sur Confirmer.

    Le tag est associé à votre dépôt.

CLI gcloud

  1. Demandez à votre administrateur la valeur du tag à associer.

    Vous pouvez associer une valeur de balise à l'un de ces types d'identifiants:

    • Un nom d'espace de noms, tel que 123456789012/env/dev
    • Un ID permanent, tel que tagValues/567890123456
  2. Associez la valeur du tag à l'aide de la commande suivante:

    gcloud alpha resource-manager tags bindings create \
        --tag-value=TAG_VALUE \
        --parent=REPOSITORY_ID \
        --location=LOCATION
    

    Remplacez les valeurs suivantes :

    • TAG_VALUE est l'ID permanent ou le nom d'espace de noms de la valeur de tag à associer.

    • REPOSITORY_ID est l'ID complet du dépôt. y compris le nom de domaine de l'API pour identifier le type de ressource (//artifactregistry.googleapis.com/). Par exemple : //artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo

    • LOCATION correspond à l'emplacement du dépôt.

    Prenons l'exemple suivant :

    • Valeur de balise: 815471563813/env/dev
    • Projet : my-project
    • Dépôt : my-repo
    • Emplacement du dépôt : us-east1

    La commande gcloud CLI suivante associe le tag à la commande dépôt:

    gcloud alpha resource-manager tags bindings create \
        --tag-value=815471563813/env/dev \
        --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
        --location=us-east1
    

Répertorier les tags associés à des dépôts

Vous pouvez répertorier les tags associés à une ressource pour laquelle vous disposez des autorisations nécessaires y accéder.

Console

  1. Ouvrez la page Dépôts de la console Google Cloud.

    Ouvrir la page "Dépôts"

  2. Sélectionnez le dépôt que vous souhaitez afficher.

  3. Dans la section Repository Details (Détails du dépôt), cliquez sur Show more (Afficher plus).

    La liste Tags affiche tous les tags du dépôt, y compris les tags directs. les tags hérités d'un niveau supérieur dans la hiérarchie des ressources.

CLI gcloud

Pour lister les tags associés à un dépôt, exécutez la commande suivante :

gcloud alpha resource-manager tags bindings list \
        --parent=REPOSITORY_ID \
        --location=LOCATION

La commande ne liste que les tags directement associés à la ressource spécifiée. Elle ne renvoie donc pas les tags hérités du projet parent ou d'un niveau supérieur. Vous pouvez répertorier les tags hérités du projet parent en spécifiant un projet au lieu d'un avec l'option --parent.

Par exemple, cette commande liste les balises associées au dépôt my-repo dans le projet my-project et l'emplacement us-east1 :

gcloud alpha resource-manager tags bindings list \
    --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
    --location=us-east1

Cette commande liste les balises associées au numéro de projet 7890123456 :

gcloud alpha resource-manager tags bindings list \
    --parent=//cloudresourcemanager.googleapis.com/projects/7890123456 \

Dissocier des tags de dépôts

Vous pouvez dissocier un tag directement associé à un dépôt. Si vous avez besoin de supprimer un tag hérité du projet parent ou d'une autre partie la hiérarchie des ressources, un administrateur de projet doit la dissocier de la ressource à laquelle le tag est associé.

Pour supprimer un tag associé à un dépôt :

Console

  1. Obtenez la valeur de balise que vous souhaitez supprimer. Si vous ne connaissez pas la valeur de cette balise, list associés au dépôt.

  2. Ouvrez la page Dépôts de la console Google Cloud.

    Ouvrir la page "Dépôts"

  3. Sélectionnez le dépôt.

  4. Dans la section Détails du dépôt, cliquez sur Afficher plus.

    Les balises existantes du dépôt, y compris les balises héritées, sont affichées.

  5. Cliquez sur l'icône Modifier les tags Modifier.

  6. Dans la section Tags directs, recherchez le tag que vous souhaitez supprimer.

  7. Cliquez sur l'icône Supprimer à côté de la balise que vous souhaitez supprimer.

  8. Cliquez sur Enregistrer.

  9. Cliquez sur Confirmer.

    Le tag est supprimé de votre dépôt.

CLI gcloud

  1. Obtenez la valeur de balise que vous souhaitez supprimer. Si vous ne connaissez pas la valeur de la balise, listez les balises associées au dépôt.

  2. Détachez la valeur de la balise à l'aide de la commande suivante :

    gcloud alpha resource-manager tags bindings delete \
        --tag-value=TAG_VALUE \
        --parent=REPOSITORY_ID \
        --location=LOCATION
    

    Remplacez les valeurs suivantes :

    • Valeur de balise TAG_VALUE à dissocier.

    • REPOSITORY_ID est l'ID complet du dépôt. y compris le nom de domaine de l'API pour identifier le type de ressource (//artifactregistry.googleapis.com/). Par exemple : //artifactregistry.googleapis.com/projects/my-project/my-repo

    • LOCATION correspond à l'emplacement du dépôt.

    Prenons l'exemple suivant :

    • Valeur de balise: 815471563813/env/dev
    • Projet : my-project
    • Dépôt : my-repo
    • Emplacement du dépôt : us-east1

    La commande gcloud CLI suivante dissocie le tag du dépôt :

    gcloud alpha resource-manager tags bindings delete \
        --tag-value=815471563813/env/dev \
        --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
        --location=us-east1
    

Étape suivante