Ce document explique comment utiliser des tags pour gérer vos buckets de journaux Cloud Logging. Les tags, qui sont créés au niveau de l'organisation ou du projet, vous permettent d'annoter vos ressources. Vous pouvez également attribuer des rôles IAM (Identity and Access Management) de manière conditionnelle ou refuser l'autorisation IAM de manière conditionnelle selon qu'une ressource est associée à un tag spécifique ou non. Pour en savoir plus sur les tags, consultez la page Présentation des tags.
Par exemple, si vous utilisez BigQuery pour analyser vos données Cloud Billing, vous pouvez associer la balise project:production
aux buckets de journaux qui stockent des données de journal provenant de ressources de production, et la balise project:development
aux buckets de journaux qui stockent des données de journal provenant de ressources de développement. Vous pouvez ensuite interroger les données Cloud Billing avec des balises et consulter la répartition de vos coûts entre le développement et la production.
Les tags peuvent être explicitement associés à des buckets de journaux ou hérités de leur organisation parente, de leurs dossiers et de leurs projets.
Avant de commencer
Pour commencer à gérer vos buckets de journaux à l'aide de tags, procédez comme suit:
- Assurez-vous d'avoir créé un tag et configuré ses valeurs. Vous devez utiliser Resource Manager pour gérer les définitions de tags. Pour savoir comment créer et gérer des tags, consultez la page Créer et gérer des tags.
-
Pour obtenir les autorisations nécessaires pour gérer vos buckets de journaux à l'aide de tags, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet ou l'organisation:
-
Utilisateur de tags (
roles/resourcemanager.tagUser
) -
Lecteur de tags (
roles/resourcemanager.tagViewer
)
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.
Ces rôles prédéfinis contiennent les autorisations requises pour gérer vos buckets de journaux à l'aide de balises. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Vous devez disposer des autorisations suivantes pour gérer vos buckets de journaux à l'aide de tags:
-
Ajoutez ou supprimez des tags dans des buckets de journaux :
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
resourcemanager.projects.get
-
logging.buckets.createTagbinding
-
logging.buckets.deleteTagBinding
-
-
Afficher les tags associés aux buckets de journaux :
-
resourcemanager.tagValues.{get,list}
-
resourcemanager.tagKeys.{get,list}
-
logging.buckets.listTagBindings
-
logging.buckets.listEffectiveTags
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
-
Utilisateur de tags (
-
Pour obtenir l'autorisation dont vous avez besoin pour gérer des buckets de journaux, demandez à votre administrateur de vous accorder le rôle IAM Rédacteur de configuration des journaux (
roles/logging.configWriter
) sur votre projet. 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.Ce rôle prédéfini contient l'autorisation
logging.buckets.list
, qui est nécessaire pour gérer les buckets de journaux.Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Associer des tags à un bucket de journaux
Pour associer un tag à un bucket de journaux, procédez comme suit:
Console Google Cloud
-
Dans la console Google Cloud, accédez à la page Stockage des journaux.
Accéder à la page Stockage des journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Recherchez le bucket de journaux auquel vous souhaitez associer un tag.
Sur le bucket de journaux, cliquez sur Plusmore_vert, puis sur Modifier les tags.
Dans la boîte de dialogue, dans la section Tags directs, recherchez le tag en sélectionnant la ressource dans laquelle il a été créé. Par exemple, pour utiliser une balise créée au niveau du projet, sélectionnez Sélectionner le projet en cours comme champ d'application.
Vous pouvez également rechercher manuellement l'ID du projet, de l'organisation ou de la balise en sélectionnant l'option Saisie manuelle.
Sélectionnez la paire clé-valeur appropriée, puis cliquez sur Enregistrer.
Une boîte de dialogue confirmant vos modifications s'affiche. Cliquez sur Confirmer pour finaliser les modifications.
gcloud
Pour associer un tag à un bucket de journaux, créez une liaison de tag en exécutant la commande gcloud resource-manager tags bindings create
:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
Dans la commande précédente, effectuez les remplacements suivants:
TAG_VALUE_ID: ID permanent ou nom de l'espace de noms de la valeur de tag. Exemple :
tagValues/4567890123
Pour en savoir plus sur les identifiants de tag, consultez la section Définitions et identifiants de tags.BUCKET_NAME: nom du bucket de journaux. Exemple :
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: emplacement du bucket de journaux.
API
Pour associer un tag à un bucket de journaux, utilisez la méthode tagBindings.create
.
Afficher les tags associés à un bucket de journaux
Pour afficher les tags associés à un bucket de journaux, procédez comme suit:
Console Google Cloud
-
Dans la console Google Cloud, accédez à la page Stockage des journaux.
Accéder à la page Stockage des journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Recherchez le bucket de journaux dont vous souhaitez afficher les tags.
Dans la colonne Tags (Tags), une balise associée au bucket de journaux est listée. Pour afficher toutes les balises associées au bucket de journaux, cliquez sur le bouton arrow_drop_down Plus pour développer la liste des balises.
gcloud
Exécutez la commande gcloud resource-manager tags bindings list
:
gcloud resource-manager tags bindings list \ --parent=BUCKET_NAME \ --location=LOCATION
Dans la commande précédente, effectuez les remplacements suivants:
TAG_VALUE_ID: ID permanent ou nom de l'espace de noms de la valeur de tag. Exemple :
tagValues/4567890123
Pour en savoir plus sur les identifiants de tag, consultez la section Définitions et identifiants de tags.BUCKET_NAME: nom du bucket de journaux. Exemple :
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: emplacement du bucket de journaux.
Facultatif: Pour afficher les tags hérités du bucket de journaux, ajoutez l'option --effective
. Cette option renvoie une réponse semblable à la suivante:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Si toutes les balises sont explicitement associées au bucket de journaux et qu'aucune balise n'est héritée, le champ inherited
est défini sur "false" et est omis.
API
Pour obtenir la liste des liaisons de tags pour un bucket, utilisez la méthode tagBindings.list
.
Supprimer des tags d'un bucket de journaux
Pour supprimer les balises associées à un bucket de journaux, vous devez supprimer la liaison de balise associée au bucket de journaux. Pour supprimer un tag, vous devez le supprimer de toutes les ressources associées.
Console Google Cloud
-
Dans la console Google Cloud, accédez à la page Stockage des journaux.
Accéder à la page Stockage des journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Recherchez le bucket de journaux dont vous souhaitez supprimer la balise.
Sur le bucket de journaux, cliquez sur Plusmore_vert, puis sur Modifier les tags.
Dans la boîte de dialogue, maintenez le pointeur sur la balise à supprimer, puis cliquez sur
Supprimer l'élément. Cliquez sur Enregistrer pour enregistrer les modifications.Une boîte de dialogue confirmant vos modifications s'affiche. Cliquez sur Confirmer pour finaliser les modifications.
gcloud
Exécutez la commande gcloud resource-manager tags bindings delete
:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
Dans la commande précédente, effectuez les remplacements suivants:
TAG_VALUE_ID: ID permanent ou nom de l'espace de noms de la valeur de tag. Exemple :
tagValues/4567890123
Pour en savoir plus sur les identifiants de tag, consultez la section Définitions et identifiants de tags.BUCKET_NAME: nom du bucket de journaux. Exemple :
logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID
.LOCATION: emplacement du bucket de journaux.
API
Pour supprimer une balise d'un bucket de journaux, utilisez la méthode tagBindings.delete
.
Limites
Vous ne pouvez pas utiliser les autorisations de rôle IAM pour contrôler les buckets de journaux qu'un compte principal voit lorsqu'il les liste dans un projet Google Cloud. Un administrateur verra une liste complète ou une liste vide. Toutefois, vous pouvez utiliser des attributions de rôles IAM avec des conditions IAM pour limiter les actions qu'un principal peut effectuer sur un bucket de journaux. Par exemple, vous pouvez limiter la possibilité pour un principal de supprimer un bucket de journaux spécifique.
Si vous utilisez des exportations de données Cloud Billing avec BigQuery, l'utilisation des balises dans l'exportation peut prendre jusqu'à une heure. Si une balise a été ajoutée ou supprimée il y a une heure, ou si le bucket de journaux existe depuis moins d'une heure, il est possible qu'il n'apparaisse pas dans l'exportation.
Rôles personnalisés et attributions de rôles avec conditions IAM
Si vous prévoyez d'utiliser des rôles IAM personnalisés et d'associer des conditions IAM aux attributions de rôles, vous devrez peut-être créer plusieurs rôles personnalisés. Certaines autorisations IAM sont invalidées lorsqu'une condition IAM est associée à une attribution de rôle.
Pour Cloud Logging, les autorisations IAM suivantes sont invalidées lorsqu'une attribution de rôle contient une condition IAM:
logging.buckets.list
logging.buckets.create
Vous devrez donc peut-être créer un rôle avec les autorisations list
et create
, et un autre rôle contenant d'autres autorisations spécifiques au bucket.
Par exemple, vous pouvez créer un rôle contenant les autorisations logging.buckets.delete
et logging.buckets.update
.
Lorsque vous attribuez le rôle contenant les autorisations list
et create
, n'associez pas de condition IAM à l'attribution du rôle.
Lorsque vous accordez le rôle contenant les autorisations delete
et update
, vous pouvez ajouter une condition IAM qui limite l'octroi aux ressources associées à un tag spécifique.
Étape suivante
Découvrez comment définir une règle d'administration avec des tags.
Pour en savoir plus sur l'utilisation des tags dans les exportations de données Cloud Billing, consultez la documentation sur les exportations de données Cloud Billing.