Dépôts de tags

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

Pour regrouper des dépôts dans Artifact Registry à 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 au même dépôt. Pour en savoir plus sur les différences entre les tags et les étiquettes, consultez Tags and labels.

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 dans Google Cloud au niveau de l'organisation et les gèrent dans Resource Manager. Lorsque vous associez un tag à un dépôt Artifact Registry, vous pouvez l'utiliser avec des 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 qui sont hérités du projet parent et des niveaux supérieurs, mais elles ne sont pas compatibles avec les tags que vous associez directement aux dépôts.

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

Pour en savoir plus sur les tags et le contrôle d'accès conditionnel avec des tags, consultez Tags et contrôle des accès.

Autorisations requises

Pour obtenir les autorisations nécessaires pour gérer les tags, demandez à votre administrateur de vous accorder les rôles IAM suivants :

  • Lecteur de tags (roles/resourcemanager.tagViewer) sur les ressources auxquelles les tags sont associés
  • Afficher et gérer les tags au niveau de l'organisation : Lecteur de l'organisation (roles/resourcemanager.organizationViewer) sur l'organisation
  • Créer, mettre à jour et supprimer des définitions de tags : Administrateur de tags (roles/resourcemanager.tagAdmin) sur la ressource pour laquelle vous créez, mettez à jour ou supprimez des tags
  • Associer et supprimer des tags de ressources: Utilisateur de tags (roles/resourcemanager.tagUser) sur la valeur de tag et les ressources auxquelles vous associez ou supprimez la valeur de tag

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Associer des tags à des dépôts

Une fois qu'un administrateur de projet a créé des tags, vous pouvez les associer à un dépôt. Chaque tag comporte une clé et une valeur. Pour ajouter un tag à un dépôt, vous devez associer une valeur au dépôt.

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

Console

  1. Obtenez la valeur de tag à associer auprès de votre administrateur.

    Vous pouvez associer une valeur de tag avec l'un des types d'identifiants suivants :

    • Un nom d'espace de noms, tel que 123456789012/env/dev
    • Un ID permanent, tel que tagValues/567890123456
  2. Ouvrez la page Dépôts dans la Google Cloud console.

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

    Les tags existants pour le dépôt, y compris les tags hérités, s'affichent.

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

  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 pour filtrer la liste des tags, puis sélectionnez la clé de tag.

  9. Dans le champ Valeur, saisissez pour filtrer la liste des tags, puis sélectionnez la valeur de tag.

  10. Cliquez sur Enregistrer.

  11. Cliquez sur Confirmer.

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

Gcloud CLI

  1. Obtenez la valeur de tag à associer auprès de votre administrateur.

    Vous pouvez associer une valeur de tag avec l'un des types d'identifiants suivants :

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

    gcloud 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 permettant d'identifier le type de ressource (//artifactregistry.googleapis.com/). Par exemple, //artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo

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

    Prenons l'exemple suivant :

    • Valeur du tag : 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 au dépôt :

    gcloud 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 à laquelle vous êtes autorisé à accéder.

Console

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

    Ouvrir la page "Dépôts"

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

  3. Dans la section Détails du dépôt, cliquez sur Plus.

    La liste Tags affiche tous les tags du dépôt, y compris les tags directs et les tags hérités des niveaux supérieurs de la hiérarchie des ressources.

Gcloud CLI

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

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

La commande ne répertorie 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 des niveaux supérieurs. Vous pouvez répertorier les tags hérités du projet parent en spécifiant un projet au lieu d'un dépôt avec l'option --parent.

Par exemple, cette commande répertorie les tags associés au dépôt my-repo dans le projet my-project et à l'emplacement us-east1 :

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

Cette commande répertorie les tags associés au numéro de projet 7890123456 :

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

Dissocier les tags des dépôts

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

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

Console

  1. Obtenez la valeur de tag que vous souhaitez supprimer. Si vous ne connaissez pas la valeur de tag, répertoriez les tags associés au dépôt.

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

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

    Les tags existants pour le dépôt, y compris les tags hérités, s'affichent.

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

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

  7. Cliquez sur l'icône supprimer à côté du tag que vous souhaitez supprimer.

  8. Cliquez sur Enregistrer.

  9. Cliquez sur Confirmer.

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

Gcloud CLI

  1. Obtenez la valeur de tag que vous souhaitez supprimer. Si vous ne connaissez pas la valeur de tag, répertoriez les tags associés au dépôt.

  2. Dissociez la valeur de tag à l'aide de la commande suivante :

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

    Remplacez les valeurs suivantes :

    • TAG_VALUE est la valeur de tag à dissocier.

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

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

    Prenons l'exemple suivant :

    • Valeur du tag : 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 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