Utiliser Cloud Monitoring pour les notifications d'ingestion

Compatible avec:

Ce document explique comment utiliser Cloud Monitoring pour recevoir des notifications d'ingestion. Google SecOps utilise Cloud Monitoring pour envoyer les notifications d'ingestion. Grâce à cette fonctionnalité, vous pouvez résoudre les problèmes de manière proactive. Vous pouvez intégrer des notifications par e-mail aux workflows existants. Les notifications sont déclenchées lorsque les valeurs d'ingestion atteignent certains niveaux prédéfinis. Dans la documentation Cloud Monitoring, les notifications sont appelées alertes.

Avant de commencer

Configurer une notification d'ingestion pour les métriques d'état

Pour configurer des notifications qui surveillent les métriques de santé de l'ingestion spécifiques à Google SecOps, procédez comme suit:

  1. Dans Google Cloud Console, sélectionnez Surveillance.

  2. Dans le volet de navigation, sélectionnez Alertes, puis cliquez sur Créer une règle.

  3. Sur la page Sélectionner une métrique, cliquez sur Sélectionner une métrique.

  4. Dans le menu Sélectionner une métrique, cliquez sur l'une des options suivantes:

    • Activez l'option Active pour filtrer et n'afficher que les ressources et les métriques ayant enregistré des données au cours des 25 dernières heures. Si vous ne la sélectionnez pas, tous les types de ressources et de métriques sont répertoriés.
    • Bouton Niveau de l'organisation/du dossier pour surveiller les ressources et les métriques de votre organisation et de vos dossiers, telles que l'utilisation du quota des clients ou l'allocation d'emplacements emplacement BigQuery.
  5. Sélectionnez l'une des métriques suivantes:

    • Sélectionnez Chronicle Collector > Ingestion (Collecteur Chronicle > Ingestion), puis Total log count ingested (Nombre total de journaux ingérés) ou Total log size ingested (Taille totale des journaux ingérés).

    • Sélectionnez Chronicle Collector > Normaliser, puis Nombre total d'enregistrements ou Nombre total d'événements.

    • Sélectionnez Chronicle Log Type > Outofband (Type de journal Chronicle > Hors bande), puis Total ingested log count (Feeds) (Nombre total de journaux ingérés (flux)) ou Total ingested log size (Feeds) (Taille totale des journaux ingérés (flux)).

  6. Cliquez sur Appliquer.

  7. Pour ajouter un filtre, sur la page Sélectionner une métrique, cliquez sur Ajouter un filtre. Dans la boîte de dialogue de filtrage, sélectionnez le libellé collector_id, un comparateur, puis la valeur du filtre.

    • Sélectionnez un ou plusieurs des filtres suivants:

      • project_id: identifiant du projet Google Cloud associé à cette ressource.

      • location: emplacement physique du cluster contenant l'objet collecteur. Nous vous recommandons de ne pas utiliser ce champ. Si vous laissez ce champ vide, Google Security Operations peut utiliser les informations dont il dispose déjà pour déterminer automatiquement où stocker les données.

      • collector_id: ID du collecteur.

      • log_type: nom du type de journal.

      • Libellé de métrique > espace de noms: espace de noms du journal.

      • Feed_name: nom du flux.

      • LogType: type de journal.

      • Libellé de la métrique > event_type: le type d'événement détermine les champs inclus avec l'événement. Le type d'événement inclut des valeurs telles que PROCESS_OPEN, FILE_CREATION, USER_CREATION et NETWORK_DNS.

      • Libellé de la métrique > état: état final de l'événement ou du journal. L'état est l'un des suivants:

        • parsed. Le journal est correctement analysé.
        • validated. Le journal est validé.
        • failed_parsing. Le journal contient des erreurs d'analyse.
        • failed_validation. Le journal contient des erreurs de validation.
        • failed_indexing. Le journal contient des erreurs d'indexation par lot.

      • Libellé de métrique > code_raison_suppression: ce champ est renseigné si la source d'ingestion est le transpondeur Google SecOps. Il indique la raison pour laquelle un journal a été supprimé lors de la normalisation.

      • Libellé de métrique > ingestion_source: source d'ingestion présente dans le libellé d'ingestion lorsque les journaux sont ingérés à l'aide de l'API d'ingestion.

    • Sélectionnez un ID de collecteur spécial. L'ID du collecteur peut également être un ID de transfert ou un ID spécial en fonction de la méthode d'ingestion.

      • aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa: représente tous les flux créés à l'aide de la page ou de l'API de gestion des flux. Pour en savoir plus sur la gestion des flux, consultez Gestion des flux et API de gestion des flux.

      • bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb: représente toutes les sources d'ingestion qui utilisent la méthode unstructuredlogentries de l'API Ingestion. Pour en savoir plus sur l'API d'ingestion, consultez la page API d'ingestion Google SecOps.

      • cccccccc-cccc-cccc-cccc-cccccccccccc: représente toutes les sources d'ingestion qui utilisent la méthode udmevents de l'API d'ingestion.

      • dddddddd-dddd-dddd-dddd-dddddddddddd: représente l'ingestion des journaux Google Cloud.

      • eeeeeeee-eeee-eeee-eeee-eeeeeeeeeeee: représente l'ID du collecteur utilisé pour CreateEntities.

      • aaaa1111-aaaa-1111-aaaa-1111aaaa1111: représente l'agent de collecte.

  8. Dans la section Transformer les données, procédez comme suit:

    1. Définissez le champ Agrégation de séries temporelles sur sum.
    2. Définissez le champ Grouper par série temporelle sur project_id.
  9. (Facultatif) Configurez une règle d'alerte avec plusieurs conditions. Pour créer des notifications d'ingestion avec plusieurs conditions dans une règle d'alerte, consultez la section Règles comportant plusieurs conditions.

Métriques du transpondeur Google SecOps et filtres associés

Le tableau suivant décrit les métriques de transfert Google SecOps disponibles et les filtres associés.

Métrique du forwarder Google SecOps Filter
Mémoire du conteneur utilisée log_type, collector_id
Espace disque du conteneur utilisé log_type, collector_id
cpu_used du conteneur log_type, collector_id
Journaliser drop_count log_type, collector_id, input_type, reason
buffer_used log_type, collector_id, buffer_type, input_type
last_heartbeat log_type, collector_id, input_type

Configurer un exemple de stratégie pour détecter les transferts Google SecOps silencieux

L'exemple de stratégie suivant détecte tous les transferts Google SecOps et envoie des alertes si les transferts Google SecOps n'envoient pas de journaux pendant 60 minutes. Cela peut ne pas être utile pour tous les transferts Google SecOps que vous souhaitez surveiller. Par exemple, vous pouvez surveiller une seule source de journaux sur un ou plusieurs transferts Google SecOps avec un seuil différent, ou exclure des transferts Google SecOps en fonction de leur fréquence de création de rapports.

  1. Dans Google Cloud Console, sélectionnez Surveillance.
    Accéder à Cloud Monitoring

  2. Cliquez sur Créer une règle.

  3. Sur la page Sélectionner une métrique, sélectionnez Collecteur Chronicle > Ingestion > Nombre total de journaux ingérés.

  4. Cliquez sur Appliquer.

  5. Dans la section Transformer les données, procédez comme suit:

    1. Définissez la Fenêtre glissante sur 1 heure.
    2. Définissez la fonction de fenêtrage glissant sur moyenne.
    3. Définissez Agrégation de séries temporelles sur moyenne.
    4. Définissez Regrouper les séries temporelles par sur collector_id. Si cette valeur n'est pas définie pour regrouper par collector_id, une alerte est déclenchée pour chaque source de journal.
  6. Cliquez sur Suivant.

  7. Sélectionnez Absence de métrique, puis procédez comme suit:

    1. Définissez Déclencheur d'alerte sur À chaque infraction de série.
    2. Définissez Temps d'absence du déclencheur sur une heure.
    3. Saisissez un nom pour la condition, puis cliquez sur Suivant.
  8. Dans la section Notifications et nom, procédez comme suit:

    1. Sélectionnez un canal de notification dans la zone Utiliser un canal de notification. Nous vous recommandons de configurer plusieurs canaux de notification à des fins de redondance.
    2. Configurez les notifications de clôture d'incident.
    3. Définissez les libellés utilisateur des règles à un niveau approprié. Permet de définir le niveau de sévérité de l'alerte pour une règle.
    4. Saisissez toute documentation que vous souhaitez recevoir avec l'alerte.
    5. Saisissez un nom pour la règle d'alerte.

Ajouter des exclusions à une règle "tout-en-un"

Il peut être nécessaire d'exclure certains transferts Google SecOps d'une règle générique, car ils peuvent simplement avoir des volumes de trafic faibles ou nécessiter une règle d'alerte plus personnalisée.

  1. Dans Google Cloud Console, sélectionnez Surveillance.

  2. Sur la page de navigation, sélectionnez Alertes, puis dans la section Règles, sélectionnez la règle que vous souhaitez modifier.

  3. Sur la page Détails de la règle, cliquez sur Modifier.

  4. Sur la page Modifier la règle d'alerte, dans la section Ajouter des filtres, sélectionnez Ajouter un filtre, puis procédez comme suit:

    1. Sélectionnez le libellé collector_id et le collecteur que vous souhaitez exclure de la règle.
    2. Définissez le comparateur sur != et la valeur sur l'collector_id que vous souhaitez exclure, puis cliquez sur OK.
    3. Répétez l'opération pour chaque collecteur à exclure. Vous pouvez également utiliser une expression régulière pour exclure plusieurs collecteurs avec un seul filtre si vous souhaitez utiliser le format suivant:

    (?:aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa|bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb|cccccccc-cccc-cccc-cccc-cccccccccccc)

  5. Cliquez sur Save Policy (Enregistrer la stratégie).

Configurer un exemple de règle pour détecter les agents de collecte Google SecOps silencieux

L'exemple de stratégie suivant détecte tous les agents de collecte Google SecOps et envoie des alertes si les agents de collecte Google SecOps n'envoient pas de journaux pendant 60 minutes. Cet exemple peut ne pas être utile pour tous les agents de collecte Google SecOps que vous souhaitez surveiller. Par exemple, vous pouvez surveiller une seule source de journaux sur un ou plusieurs agents de collecte Google SecOps avec un seuil différent, ou exclure des agents de collecte Google SecOps en fonction de leur fréquence de création de rapports.

  1. Dans Google Cloud Console, sélectionnez Surveillance.
    Accéder à Cloud Monitoring

  2. Cliquez sur Créer une règle.

  3. Sur la page Sélectionner une métrique, sélectionnez Collecteur Chronicle > Agent > Nombre d'éléments acceptés par l'exportateur.

  4. Cliquez sur Appliquer.

  5. Dans la section Transformer les données, procédez comme suit:

    1. Définissez la Fenêtre glissante sur 1 heure.
    2. Définissez la fonction de fenêtrage glissant sur moyenne.
    3. Définissez Agrégation de séries temporelles sur moyenne.
    4. Définissez Regrouper les séries temporelles par sur collector_id. Si cette valeur n'est pas définie pour regrouper par collector_id, une alerte est déclenchée pour chaque source de journal.
  6. Cliquez sur Suivant.

  7. Sélectionnez Absence de métrique, puis procédez comme suit:

    1. Définissez Déclencheur d'alerte sur À chaque infraction de série.
    2. Définissez Temps d'absence du déclencheur sur une heure.
    3. Saisissez un nom pour la condition, puis cliquez sur Suivant.
  8. Dans la section Notifications et nom, procédez comme suit:

    1. Sélectionnez un canal de notification dans la zone Utiliser un canal de notification. Nous vous recommandons de configurer plusieurs canaux de notification à des fins de redondance.
    2. Configurez les notifications de clôture d'incident.
    3. Définissez les libellés utilisateur des règles à un niveau approprié. Permet de définir le niveau de sévérité de l'alerte pour une règle.
    4. Saisissez toute documentation que vous souhaitez recevoir avec l'alerte.
    5. Saisissez un nom pour la règle d'alerte.