Contrôler les accès à l'aide de tags

Cette page explique comment utiliser des tags pour gérer des ressources dans Cloud Data Fusion.

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

Avant de commencer

Afin d'obtenir des autorisations pour les cas d'utilisation suivants, demandez à votre administrateur d'attribuer le rôle suggéré au niveau approprié de la hiérarchie des ressources. Pour en savoir plus sur IAM dans Cloud Data Fusion, consultez la page Contrôle des accès avec IAM.

Rôles et autorisations requis

Pour obtenir les autorisations nécessaires pour utiliser des tags afin de gérer les ressources dans Cloud Data Fusion, demandez à votre administrateur de vous attribuer les rôles IAM suivants sur le compte de service Cloud Data Fusion, et sur le compte de service Compute Engine par défaut ou sur le compte de service personnalisé:

  • Pour afficher les définitions de tags et les tags associés à des ressources : Lecteur de tags (roles/resourcemanager.tagViewer)
  • Pour créer, mettre à jour et supprimer des définitions de balises : Administrateur de balises (roles/resourcemanager.tagAdmin)
  • Pour administrer les tags au niveau de l'organisation : Lecteur de l'organisation (roles/resourcemanager.organizationViewer) sur la ressource d'organisation
  • Pour ajouter et supprimer des tags associés à des ressources : Utilisateur du tag (roles/resourcemanager.tagUser) : sur la valeur du tag et sur les ressources auxquelles vous associez la valeur de tag
  • Pour associer des tags à des instances Cloud Data Fusion : Administrateur Cloud Data Fusion (roles/datafusion.admin)

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Ces rôles prédéfinis contiennent les autorisations requises pour gérer les ressources dans Cloud Data Fusion à l'aide de tags. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour gérer des ressources dans Cloud Data Fusion à l'aide de tags:

  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.list
  • resourcemanager.tagValues.get
  • resourcemanager.tagValues.list
  • listTagBindings pour le type de ressource approprié. Par exemple, pour afficher les tags associés aux instances Cloud Data Fusion : datafusion.instances.listTagBindings
  • listEffectiveTags pour le type de ressource approprié. Par exemple, pour afficher tous les tags associés ou hérités par des instances Cloud Data Fusion : datafusion.instances.listEffectiveTags

Vous pouvez également obtenir ces autorisations avec 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 tag, consultez Créer une balise et Ajouter des valeurs de balise.

Associer un tag à une ressource

Une fois le tag créé, associez-le à une ressource.

gcloud

Pour associer un tag à une instance, vous devez créer une ressource de liaison de tags à l'aide de la commande create:

gcloud resource-manager tags bindings create \
  --tag-value=TAGVALUE_NAME \
  --parent=RESOURCE_ID \
  --location=LOCATION

Remplacez les éléments suivants :

  • TAGVALUE_NAME: ID permanent ou nom de l'espace de noms de la valeur de tag associée (par exemple, tagValues/567890123456).
  • RESOURCE_ID: ID complet de la ressource, y compris le nom de domaine de l'API, identifiant son type (//datafusion.googleapis.com/). Par exemple, pour associer un tag à une instance de projects/7890123456 située dans us-central1, utilisez l'ID de ressource suivant : //datafusion.googleapis.com/projects/7890123456/locations/us-central1/instances/instance-ID.
  • LOCATION: emplacement de votre ressource. Exemple : us-central1.

Une notification confirme que vos tags ont été créés.

Lister les tags associés à une ressource

Vous pouvez afficher la liste des liaisons de tags directement associées à la ressource ou héritées par celle-ci.

gcloud

Pour obtenir la liste des liaisons de tags associées à une ressource, utilisez la commande list:

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

Remplacez les éléments suivants :

  • RESOURCE_ID: ID complet de la ressource, y compris le nom de domaine de l'API, identifiant le type de ressource (//datafusion.googleapis.com/). Par exemple, pour répertorier les tags d'une instance de projects/7890123456 située dans us-central1, utilisez l'ID de ressource suivant : //datafusion.googleapis.com/projects/7890123456/locations/us-central1/instances/instance-ID.
  • LOCATION: emplacement de votre ressource. Exemple : us-central1.

La réponse se présente sous la forme suivante:

tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
  tagValue: tagValues/567890123456
  resource: //datafusion.googleapis.com/projects/7890123456/locations/us-central1/instances/instance-ID

Dissocier des tags d'une ressource

Vous pouvez dissocier les tags directement associés à une ressource. Les tags hérités peuvent être remplacés en associant un tag avec 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, utilisez la commande delete:

gcloud resource-manager tags bindings delete \
  --tag-value=TAGVALUE_NAME \
  --parent=RESOURCE_ID \
  --location=LOCATION

Remplacez les éléments suivants :

  • TAGVALUE_NAME: ID permanent ou nom de l'espace de noms de la valeur de tag associée (par exemple, tagValues/567890123456).
  • RESOURCE_ID: ID complet de la ressource, y compris le nom de domaine de l'API, identifiant son type (//datafusion.googleapis.com/). Par exemple, pour associer un tag à une instance de projects/7890123456 située dans us-central1, utilisez l'ID de ressource suivant : //datafusion.googleapis.com/projects/7890123456/locations/us-central1/instances/instance-ID.
  • LOCATION: emplacement de votre ressource. Exemple : us-central1.

Une notification confirme la mise à jour de vos tags.

Supprimer des clés et des valeurs de tags

Lorsque vous supprimez une clé de tag ou une définition de valeur, assurez-vous que le tag est dissocié de la ressource. 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