Contrôle des accès avec IAM

Ce document vous aide à comprendre comment Cloud Logging utilise les rôles et les autorisations Identity and Access Management (IAM) pour contrôler l'accès aux ressources Logging. Vos rôles IAM déterminent si vous pouvez effectuer des actions telles que créer des récepteurs de journaux ou des buckets de journaux, lire les données de journaux stockées dans un bucket de journaux ou accéder à des pages telles que l'explorateur de journaux. Si vous exécutez une commande API Logging ou Google Cloud CLI, vos rôles IAM déterminent si vous êtes autorisé à exécuter la commande.

Présentation

Vos rôles IAM déterminent les actions que vous pouvez effectuer dans Logging. Un rôle est un ensemble d'autorisations. Lorsque vous accordez un rôle à un compte principal, vous lui accordez toutes les autorisations associées à ce rôle. Vous pouvez attribuer plusieurs rôles au même compte principal.

Les rôles IAM sont attribués à une ressource, telle qu'un projet Google Cloud , un dossier, un bucket ou une organisation. Par exemple, vous pouvez accorder à un compte principal le rôle Lecteur de journaux (roles/logging.viewer) sur un projet Google Cloud spécifique.

Les sections Rôles prédéfinis et Rôles Logging de cette page fournissent des informations complètes sur les rôles et les autorisations de Logging. D'autres sections de cette page fournissent des informations sur les rôles ou les autorisations pour des cas d'utilisation spécifiques.

Le reste de cette section explique comment accorder à un compte principal l'accès à des buckets de journaux ou à certaines entrées de journaux d'un bucket de journaux. Il explique également comment restreindre l'accès à certains champs LogEntry.

Accorder l'accès aux buckets de journaux

Le rôle Lecteur de journaux (roles/logging.viewer) permet à un compte principal d'accéder à toutes les données de journaux stockées dans les buckets de journaux _Required et _Default, à l'exception des journaux d'accès aux données. Si un principal a besoin d'accéder aux journaux d'accès aux données, accordez-lui le rôle Lecteur de journaux privés (roles/logging.privateLogViewer).

Pour les buckets de journaux personnalisés, vous pouvez accorder l'accès à la vue _AllLogs ou à une vue de journaux personnalisée. Logging crée automatiquement la vue _AllLogs, qui inclut toutes les entrées de journal du bucket de journaux. Pour accorder l'accès à une vue de journaux, vous devez ajouter une liaison IAM à la stratégie IAM associée à la vue de journaux ou au projet. Pour en savoir plus, consultez Contrôler l'accès à une vue de journal.

La journalisation est également compatible avec les tags sur les buckets de journaux, ce qui peut vous aider à comprendre vos coûts. Vous pouvez également utiliser des tags pour empêcher un utilisateur de supprimer un bucket de journaux. Pour en savoir plus, consultez Utiliser des tags pour gérer l'accès aux buckets de journaux.

Accorder l'accès à certaines entrées de journaux dans un bucket de journaux

Pour accorder à un compte principal l'accès à certaines entrées de journal stockées dans un bucket de journaux, créez une vue de journaux, puis accordez-lui l'accès à cette vue. Par exemple, vous pouvez créer une vue de journaux dans le bucket de journaux _Default qui n'inclut que les entrées de journal dont le type de ressource est une instance Compute Engine. Pour savoir comment créer des vues de journaux et découvrir les différentes stratégies que vous pouvez utiliser pour accorder l'accès à la vue, consultez Configurer des vues de journaux dans un bucket de journaux.

Restreindre l'accès à des champs LogEntry spécifiques

Pour restreindre l'accès à des champs spécifiques dans la structure de données LogEntry, configurez des contrôles d'accès au niveau des champs dans le bucket de journaux qui stocke vos données. Par exemple, pour votre bucket de journaux _Default, vous pouvez placer une restriction sur le jsonPayload de la structure de données LogEntry, puis accorder à vos administrateurs l'accès à ce champ. Pour en savoir plus, consultez Configurer des contrôles d'accès au niveau des champs.

Vous ne pouvez pas restreindre les champs d'un bucket de journaux qui a été mis à niveau pour utiliser Observability Analytics. De même, si un bucket de journaux contient un champ restreint, vous ne pouvez pas le mettre à niveau pour utiliser Observability Analytics.

Rôles prédéfinis

IAM fournit des rôles prédéfinis pour accorder un accès précis à des ressources Google Cloud spécifiques et empêcher tout accès indésirable à d'autres ressources. Google Cloud crée et gère ces rôles, et met automatiquement à jour leurs autorisations si nécessaire, par exemple lorsque Logging ajoute de nouvelles fonctionnalités.

Le tableau suivant répertorie les rôles prédéfinis pour Logging. Pour chaque rôle, le tableau affiche le titre, la description, les autorisations qu'il contient et le type de ressource le plus bas pour lequel les rôles peuvent être attribués. Vous pouvez attribuer les rôles prédéfinis au niveau du projet Google Cloud ou, dans la plupart des cas, à tout type supérieur dans la hiérarchie des ressources. Pour limiter le rôle "Lecteur de journaux" à une vue de journaux dans un bucket, utilisez les attributs de ressource pour les conditions IAM.

Pour obtenir la liste de toutes les autorisations individuelles contenues dans un rôle, consultez Obtenir les métadonnées du rôle.

Role Permissions

(roles/logging.admin)

Provides all permissions necessary to use all features of Cloud Logging.