Déterminer les filtres d'événements pour Cloud Audit Logs

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Un déclencheur Eventarc déclare votre intérêt pour un événement ou un ensemble d'événements spécifique. Pour Cloud Audit Logging, les déclencheurs sont appliqués lors de la création d'un journal d'audit correspondant aux critères de filtre du déclencheur, ce qui vous permet de capturer des événements spécifiques et d'agir en conséquence.

Pour obtenir la liste des services Google Cloud qui fournissent des journaux d'audit, consultez la page Services Google avec journaux d'audit.

Pour obtenir la liste des événements du journal d'audit compatibles avec Eventarc, y compris les valeurs serviceName et methodName, consultez la section Événements compatibles avec Eventarc.

.

Pour identifier les filtres d'événements exacts nécessaires à la création d'un déclencheur, générez l'événement que vous souhaitez capturer, puis affichez son entrée Cloud Audit Logging correspondante. Notez que les données d'une entrée de journal peuvent être réparties et réparties sur plusieurs entrées.

  1. Assurez-vous d'avoir activé pour votre service les types de journaux d'audit pour l'accès aux données.

    Accéder aux journaux d'audit

    Notez que les services pour lesquels l'audit est activé par défaut ne sont pas répertoriés.

    1. Dans le tableau principal de la page Journaux d'audit, sélectionnez un service Google Cloud dans la colonne Titre.

    2. Dans l'onglet Type de journal, cochez les cases Lecture administrateur, Lecture de données et Écriture de données, puis cliquez sur Enregistrer.

  2. Effectuez l'opération pour laquelle vous souhaitez créer un filtre d'événements et générer une entrée de journal d'audit. Vous pouvez par exemple stocker un fichier dans un bucket Cloud Storage.

  3. Dans la console, accédez à l'explorateur de journaux.

    Accéder à l'explorateur de journaux

  4. Dans le volet Générateur de requêtes, créez et exécutez une requête pour filtrer les entrées de journal et récupérer les résultats. Exemple :

    resource.type="gcs_bucket" resource.labels.bucket_name="eventarc-bucket"
    

    Pour plus d'informations sur la création de requêtes permettant de récupérer et d'affiner les journaux, consultez la section Créer des requêtes de journal.

  5. Pour afficher tous les détails d'une entrée de journal, cliquez sur la flèche de développement (▸) au début de l'entrée.

    Le champ protoPayload fait la distinction entre une entrée de journal d'audit et les autres entrées de journal. Dans l'exemple suivant, certaines parties de l'entrée de journal sont omises et certains champs sont mis en évidence :

    {
       protoPayload:{
          @type:"type.googleapis.com/google.cloud.audit.AuditLog",
          status:{},
          authenticationInfo:{},
          requestMetadata:{},
          serviceName:"storage.googleapis.com",
          methodName:"storage.objects.create",
          authorizationInfo:[],
          resourceName:"projects/_/buckets/eventarc-bucket/objects/random.txt",
          resourceLocation:{}
       },
       insertId:"il9evleafpdk",
       resource:{
          type:"gcs_bucket",
          labels:{
             project_id:"cloud-run-test",
             location:"us-central1",
             bucket_name:"eventarc-bucket"
          }
       },
       timestamp:"2021-03-05T15:55:20.754688805Z",
       severity:"INFO",
       logName:"projects/cloud-run-test/logs/cloudaudit.googleapis.com%2Fdata_access",
       receiveTimestamp:"2021-03-05T15:55:20.884984611Z"
    }
    

    • Les informations suivantes peuvent être utilisées pour vérifier le contenu de cette entrée de journal d'audit :

      • Le champ protoPayload.@type correspond à type.googleapis.com/google.cloud.audit.AuditLog.

      • Le champ logName inclut le domaine cloudaudit.googleapis.com.

    • Le champ protoPayload.serviceName correspond au service qui a écrit le journal d'audit.

    • Le champ protoPayload.methodName correspond à l'opération en cours d'audit.

    • Le champ protoPayload.resourceName correspond à la ressource en cours d'audit.

    Pour en savoir plus sur la recherche d'informations dans une entrée de journal d'audit, consultez la section Comprendre les journaux d'audit.

Séparer Cloud Audit Logs

Cloud Logging divise les entrées uniques des journaux d'audit d'une taille supérieure à 512 Ko et distribue les données contenues dans l'entrée de journal d'audit d'origine entre plusieurs entrées de journal split. Le champ split est un objet LogSplit qui contient les informations nécessaires pour identifier les entrées de journal fractionnées associées.

Chaque protoPayload des entrées fractionnées inclut les mêmes valeurs serviceName, methodName et resourceName afin de filtrer les événements Cloud Audit Logs. Les déclencheurs Eventarc fournissent un événement pour chaque entrée de journal fractionnée.

Lorsque l'entrée de journal d'audit est divisée en plusieurs entrées de journal, vous pouvez filtrer n'importe quel champ du fichier LogEntry. Par exemple, si vous avez besoin de la première entrée d'une entrée de journal fractionnée, vous pouvez exécuter la commande gcloud CLI suivante, en utilisant split.index pour indiquer la position de l'entrée dans la d'entrées fractionnées. (La première entrée de la partition présente l'index 0).

    gcloud logging read "split.index=0"

Pour en savoir plus sur les entrées de journal fractionnées, y compris sur la reconnaissance des entrées et des exemples de requêtes, consultez la section Séparer les entrées du journal d'audit.

Étape suivante