Informations relatives aux journaux d'audit de Cloud Spanner

Cette page décrit les journaux d'audit créés par Cloud Spanner dans le cadre des journaux d'audit Cloud.

Présentation

Les services Google Cloud alimentent des journaux d'audit pour vous aider à déterminer qui fait quoi, où et quand. Chaque projet Google Cloud contient uniquement les journaux d'audit relatifs aux ressources directement intégrées au sein du projet. Chacune des autres entités (y compris les dossiers, les organisations et les comptes de facturation) ne contient que les journaux d'audit qui la concernent.

Pour découvrir Cloud Audit Logging, consultez la page Cloud Audit Logging. Pour approfondir vos connaissances sur Cloud Audit Logging, consultez la page Comprendre les journaux d'audit.

Cloud Audit Logging gère trois journaux d'audit pour chaque projet, dossier et organisation Google Cloud :

  • Journaux d'audit pour les activités d'administration
  • Journaux d'audit pour l'accès aux données
  • Journaux d'audit d'événements système

Cloud Spanner consigne les journaux d'audit pour les activités d'administration, qui enregistrent les opérations modifiant la configuration ou les métadonnées d'une ressource. Vous ne pouvez pas les désactiver.

Cloud Spanner consigne les journaux d'audit pour l'accès aux données uniquement si cette fonction est explicitement activée. Ces journaux contiennent des appels d'API qui lisent la configuration ou les métadonnées des ressources, ainsi que des appels d'API pilotés par l'utilisateur qui créent, modifient ou lisent des données de ressources fournies par l'utilisateur. Les journaux d'audit pour l'accès aux données n'enregistrent pas les opérations d'accès aux données sur les ressources partagées publiquement (accessibles à tous les utilisateurs ou à tous les utilisateurs authentifiés) ou accessibles sans connexion à Google Cloud.

Cloud Spanner n'écrit pas de journaux d'audit pour les événements système.

Opérations auditées

Le tableau suivant récapitule les opérations d'API consignées dans chaque catégorie de journaux d'audit dans Cloud Spanner :

Catégorie de journaux d'audit Opérations Cloud Spanner
Journaux relatifs aux activités d'administration

Opérations sur les instances :

  • CreateInstance
  • DeleteInstance
  • UpdateInstance

Opérations sur base de données :

  • CreateDatabase
  • DropDatabase
  • GetDatabase
  • UpdateDatabaseDdl
Journaux relatifs à l'accès aux données ADMIN_READ

Opérations sur les instances :

  • GetInstance
  • GetInstanceConfig
  • ListInstanceConfigs
  • ListInstances

Opérations sur base de données :

  • GetDatabase
  • GetDatabaseDdl
  • ListDatabases
Journaux relatifs à l'accès aux données DATA_READ
  • BeginTransaction (pour une transaction ReadOnly)
  • ExecuteSql
  • ExecuteStreamingSql
  • GetSession
  • ListSessions
  • Read
  • StreamingRead
Journaux relatifs à l'accès aux données DATA_WRITE
  • BeginTransaction (pour une transaction ReadWrite)
  • Commit
  • CreateSession
  • DeleteSession
  • Rollback

Format des journaux d'audit

Les entrées des journaux d'audit, qui peuvent être affichées dans Stackdriver Logging à l'aide de la visionneuse de journaux, de l'API Stackdriver Logging ou de l'outil de ligne de commande gcloud, comprennent les objets suivants :

  • L'entrée de journal proprement dite, qui est un objet de type LogEntry. Les champs utiles sont les suivants :

    • logName, qui contient l'identification du projet et le type du journal d'audit
    • resource, qui contient la cible de l'opération faisant l'objet d'un audit
    • timeStamp, qui indique l'heure à laquelle l'opération auditée a été effectuée
    • protoPayload, qui contient les informations auditées
  • Les données de journalisation d'audit, qui correspondent à un objet AuditLog inclus dans le champ protoPayload de l'entrée de journal.

  • Un objet (facultatif) de type "informations d'audit propres au service", consigné dans le champ serviceData de l'objet AuditLog. Pour en savoir plus, consultez la section Données d'audit spécifiques au service.

Pour en savoir plus sur les autres champs de ces objets, ainsi que sur leur interprétation, consultez la page Comprendre les journaux d'audit.

Nom du journal

Les noms des ressources de Cloud Audit Logging indiquent l'entité ou le projet dont ils dépendent. En outre, ils précisent si les journaux contiennent des données sur les activités d'administration, sur l'accès aux données ou sur les événements système. Les exemples ci-dessous présentent respectivement la structure des noms des journaux concernant les activités d'administration d'un projet et celle des noms des journaux concernant l'accès aux données d'une organisation.

projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity
organizations/[ORGANIZATION_ID]/logs/cloudaudit.googleapis.com%2Fdata_access

Nom du service

Les journaux d'audit Cloud Spanner utilisent le nom de service spanner.googleapis.com.

Pour en savoir plus sur les services de journalisation, consultez la section Mapper des services à des ressources.

Types de ressources

Cloud Spanner utilise le type de ressource spanner_instance pour tous les journaux d'audit.

Pour une liste complète, consultez la page Types de ressources surveillées.

Activer les journaux d'audit

Les journaux d'audit pour les activités d'administration sont toujours activés. Vous ne pouvez pas les désactiver.

Les journaux d'audit pour l'accès aux données sont désactivés par défaut et ne sont pas écrits à moins d'être explicitement activés (à l'exception de ceux pour BigQuery, qui ne peuvent pas être désactivés).

Pour obtenir des instructions sur l'activation d'une partie ou de l'ensemble de vos journaux d'audit d'accès aux données, consultez la page Configurer les journaux d'accès aux données.

Les journaux d'audit pour l'accès aux données que vous configurez peuvent avoir une incidence sur le coût global des journaux dans Stackdriver. Consultez la section Tarifs ci-après.

Autorisations relatives aux journaux d'audit

Les autorisations et rôles Cloud IAM (Cloud Identity and Access Management) dont vous disposez déterminent les journaux d'audit que vous pouvez afficher ou exporter. Les journaux sont consignés dans les projets et dans certaines autres entités, par exemple des organisations, des dossiers et des comptes de facturation. Pour en savoir plus, consultez la page Comprendre les rôles.

Pour afficher les journaux relatifs aux activités d'administration, vous devez disposer d'un des rôles Cloud IAM suivants dans le projet qui contient vos journaux d'audit :

Pour afficher les journaux d'audit relatifs à l'accès aux données, vous devez disposer d'un des rôles suivants dans le projet qui contient les journaux d'audit :

Si vous utilisez des journaux d'audit pour une entité autre qu'un projet, telle qu'une organisation, vous devez modifier les rôles Projet. Sélectionnez à la place des rôles "Organisation" appropriés.

Afficher les journaux

Plusieurs options s'offrent à vous pour afficher les entrées de votre journal d'audit :

Interface de base de la visionneuse

Vous pouvez récupérer les entrées de vos journaux d'audit à l'aide de l'interface de base de la visionneuse de journaux dans la console Cloud. Procédez comme suit :

  1. Accédez à la page Stackdriver Logging > Journaux (Visionneuse de journaux) dans la console Cloud :

    Accéder à la page Visionneuse de journaux

  2. Sélectionnez un projet Google Cloud existant en haut de la page ou créez-en un.

  3. Dans le premier menu déroulant, sélectionnez le type de ressource dont vous souhaitez afficher les journaux d'audit. Vous pouvez sélectionner une ressource spécifique ou l'option Global pour toutes les ressources.

  4. Dans le deuxième menu déroulant, sélectionnez le type de journal que vous souhaitez afficher : activity pour les journaux d'audit pour les activités d'administration, data_access pour les journaux d'audit pour l'accès aux données et system_events pour les journaux d'audit pour les événements système.

    Si aucune de ces options ne s'affiche, aucun journal d'audit de ce type n'est disponible dans le projet.

Visionneuse avancée

Vous pouvez récupérer les entrées de vos journaux d'audit à l'aide de l'interface avancée de la visionneuse de journaux dans la console Cloud. Procédez comme suit :

  1. Accédez à la page Stackdriver Logging > Journaux (Visionneuse de journaux) dans la console Cloud :

    Accéder à la page Visionneuse de journaux

  2. Sélectionnez un projet Google Cloud existant en haut de la page ou créez-en un.

  3. Dans le premier menu déroulant, sélectionnez le type de ressource dont vous souhaitez afficher les journaux d'audit. Vous pouvez sélectionner une ressource spécifique ou l'option Global pour toutes les ressources.

  4. Cliquez sur la flèche du menu déroulant (▾) tout à droite du champ de filtre de recherche et sélectionnez Convertir en filtre avancé.

  5. Créez une requête spécifiant plus précisément les entrées de journal à afficher. Pour récupérer tous les journaux d'audit de votre projet, ajoutez la requête suivante. Fournissez un [PROJECT_ID] valide pour chacun des noms de journaux.

      logName = ("projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity"
          OR "projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events"
          OR "projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access")
    

    Pour plus de détails sur les requêtes, consultez la page Requêtes de journaux avancées.

API

Pour examiner les entrées de votre journal d'audit à l'aide de l'API Stackdriver Logging :

  1. Accédez à la section Essayer cette API dans la documentation de la méthode entries.list.

  2. Insérez les éléments suivants dans la partie Corps de la requête du formulaire Essayer cette API. En cliquant sur ce formulaire prérempli, vous remplissez automatiquement le corps de la requête, mais vous devez fournir un ID de projet [PROJECT_ID] valide pour chaque nom de journal.

      {
        "resourceNames": [
          "projects/[PROJECT_ID]"
        ],
        "pageSize": 5,
        "filter": "logName=(projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access)"
      }
    
  3. Cliquez sur Exécuter.

Pour plus de détails sur les requêtes, consultez la page Requêtes de journaux avancées.

gcloud

Pour lire vos entrées de journaux à l'aide de l'outil de ligne de commande gcloud, exécutez la commande suivante. Fournissez un [PROJECT_ID] valide pour chacun des noms de journaux.

gcloud logging read "logName=(projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access)"

Consultez la page de la méthode gcloud logging read permettant de lire les entrées de journaux. Vous obtiendrez ainsi davantage d'informations sur l'utilisation de l'outil de ligne de commande gcloud.

Pour obtenir un exemple d'entrée de journal d'audit et savoir comment y trouver les informations les plus importantes, consultez la page Comprendre les journaux d'audit.

Exporter des journaux d'audit

Vous pouvez exporter les journaux d'audit de la même manière que vous exportez d'autres types de journaux. Pour en savoir plus sur l'exportation des journaux, reportez-vous à la page Exporter des journaux. Voici des exemples d'applications associées à l'exportation des journaux d'audit :

  • Pour conserver les journaux d'audit pendant une période plus longue ou pour utiliser des fonctionnalités de recherche plus puissantes, vous pouvez exporter des copies des journaux d'audit vers Cloud Storage, BigQuery ou Pub/Sub. Avec Pub/Sub, vous avez la possibilité d'exporter vos journaux vers d'autres applications, d'autres dépôts, ainsi que vers des organisations tierces.

  • Pour gérer les journaux d'audit à l'échelle de votre organisation, vous pouvez créer des récepteurs d'exportation agrégés. Ces récepteurs permettent d'exporter les journaux pour un projet spécifique ou pour l'ensemble des projets de l'organisation.

  • Si les journaux d'audit pour l'accès aux données que vous avez activés entraînent le dépassement du quota d'attribution de journaux défini pour vos projets, vous pouvez les exporter et les exclure de Logging. Pour en savoir plus, consultez la page Exclusions de journaux.

Tarifs

Stackdriver Logging ne facture pas les journaux d'audit qui ne peuvent pas être désactivés, ce qui inclut tous les journaux d'audit pour les activités d'administration. Stackdriver Logging facture les journaux d'audit d'accès aux données que vous demandez explicitement.

Pour en savoir plus sur la tarification des journaux d'audit, consultez la page Tarifs de Stackdriver.