Collecter les journaux Fivetran

Version de l'analyseur : 1.0

Compatible avec :

Ce document explique comment configurer Fivetran pour qu'il transmette les journaux à Google Security Operations à l'aide de webhooks.

Fivetran est une plate-forme d'intégration de données qui automatise les pipelines de données de diverses sources vers des entrepôts de données. Fivetran génère des événements opérationnels, y compris des événements de synchronisation de connecteur, des événements de transformation et des changements d'état de connexion. Ces événements peuvent être envoyés à des points de terminaison externes via des webhooks sortants pour la surveillance, les alertes et l'analyse de la sécurité.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps.
  • Un compte Fivetran avec des autorisations d'administrateur ou au niveau du compte.
  • Accès à la Google Cloud Console (pour créer une clé API)
  • Un compte Fivetran avec l'accès à l'API REST activé.

Créer un flux de webhook dans Google SecOps

Créer le flux

  1. Accédez à Paramètres > Gestion des données > Flux. Si vous utilisez une plate-forme SIEM uniquement, accédez à Paramètres > Flux.
  2. Cliquez sur + Ajouter.
  3. Sélectionnez Configurer un flux unique.
  4. Dans le champ Nom du flux, saisissez un nom (par exemple, Fivetran Events).
  5. Sélectionnez Webhook comme type de source.
  6. Sélectionnez Fivetran comme Type de journal.
  7. Cliquez sur Suivant.
  8. Spécifiez les valeurs des paramètres d'entrée suivants :
    • Délimiteur de division (facultatif) : laissez ce champ vide.
    • Espace de noms de l'élément : espace de noms de l'élément.
    • Étiquettes d'ingestion : étiquette à appliquer aux événements de ce flux.
  9. Cliquez sur Suivant.
  10. Vérifiez la configuration de votre nouveau flux d'actualités, puis cliquez sur Envoyer.

Générer et enregistrer une clé secrète

  1. Sur la page d'informations du flux, cliquez sur Générer une clé secrète.
  2. Une boîte de dialogue affiche la clé secrète.
  3. Copiez et enregistrez la clé secrète de manière sécurisée.

Obtenir l'URL du point de terminaison du flux

  1. Accédez à l'onglet Détails du flux.
  2. Dans la section Informations sur le point de terminaison, copiez l'URL du point de terminaison du flux.
  3. Enregistrez cette URL pour les étapes suivantes.
  4. Cliquez sur OK.

Créer une clé API Google Cloud

Google SecOps nécessite une clé API pour l'authentification.

Créer la clé API

  1. Accédez à la page Identifiants de la console Google Cloud.
  2. Sélectionnez votre projet.
  3. Cliquez sur Créer des identifiants > Clé API.
  4. Cliquez sur Modifier la clé API pour restreindre la clé.

Restreindre la clé API

  1. Dans les paramètres de la clé API :
    • Nom : saisissez un nom descriptif (par exemple, SecOps Webhook API Key).
  2. Sous Restrictions relatives aux API :
    1. Sélectionnez Restreindre la clé.
    2. Dans le menu déroulant, recherchez et sélectionnez API Google SecOps (ou API Chronicle).
  3. Cliquez sur Enregistrer.
  4. Copiez la valeur de la clé API et enregistrez-la de manière sécurisée.

Configurer le webhook Fivetran

Créer l'URL de webhook

  • Combinez l'URL du point de terminaison et la clé API :

    <ENDPOINT_URL>?key=<API_KEY>
    

Créer un webhook à l'aide de l'API REST Fivetran

Obtenir les identifiants de l'API Fivetran

  1. Connectez-vous à votre compte Fivetran.
  2. Accédez à Paramètres du compte > Configuration de l'API.
  3. Cliquez sur Générer une clé API si vous n'en avez pas.
  4. Copiez la clé API et le code secret de l'API.

Créer un webhook au niveau du compte

Utilisez cette méthode pour recevoir les événements de tous les connecteurs de votre compte.

  1. Ouvrez un terminal et exécutez la commande suivante :

    curl -X POST https://api.fivetran.com/v1/webhooks/account \
            -u "API_KEY:API_SECRET" \
            -H "Content-Type: application/json" \
            -H "Accept: application/json" \
            -d '{
                    "url": "https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=YOUR_CHRONICLE_API_KEY",
                    "events": [
                            "sync_start",
                            "sync_end",
                            "transformation_start",
                            "transformation_succeeded",
                            "transformation_failed",
                            "connection_successful",
                            "connection_failure",
                            "create_connector",
                            "pause_connector",
                            "resume_connector",
                            "edit_connector",
                            "delete_connector",
                            "force_update_connector",
                            "resync_connector",
                            "resync_table"
                    ],
                    "active": true,
                    "secret": "YOUR_CHRONICLE_SECRET_KEY"
            }'
    
    • Où {region} est la région de votre instance Google SecOps (par exemple, us, europe ou asia-southeast1) et {parent} est le chemin d'accès à la ressource au format projects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE>.

Détails du webhook

Événements de webhook disponibles

Événement Description
sync_start Synchronisation du connecteur démarrée
sync_end Synchronisation du connecteur terminée
transformation_start Transformation démarrée
transformation_succeeded La transformation a bien été effectuée
transformation_failed Échec de la transformation
connection_successful Le test de connexion a réussi
connection_failure Échec du test de connexion
create_connector Connecteur créé

Comportement des nouvelles tentatives de webhook

Fivetran relance automatiquement les webhooks ayant échoué pendant 24 heures maximum, selon le calendrier suivant :

Réessayer Délai après la tentative initiale
1re nouvelle tentative 6 minutes
2e tentative 27 minutes
3e tentative 1 heure 45 minutes
4e tentative 6 heures 25 minutes
5e tentative 23 heures 13 minutes

Table de mappage UDM

Champ du journal Mappage UDM Logique
jsonPayload.connector_id additional.connector_id Valeur copiée directement.
jsonPayload.connector_type additional.connector_type Valeur copiée directement.
jsonPayload.data.query additional.query Valeur copiée directement.
N/A metadata.event_type Définissez en fonction de la présence du compte principal et de la cible.
jsonPayload.event metadata.product_event_type Valeur copiée directement.
jsonPayload.sync_id metadata.product_log_id Valeur copiée directement.
jsonPayload.connector_name principal.hostname Valeur copiée directement.
resource.labels.email_id principal.user.email_addresses Mappé si le format est une adresse e-mail valide.
resource.labels.unique_id principal.user.userid Valeur copiée directement.
severity security_result.severity "INFO" correspond à INFORMATIONAL.
logName target.resource.name Valeur copiée directement.
N/A target.resource.type Définissez cette option sur DATABASE.
N/A metadata.product_name Définissez cette option sur FIVETRAN.
N/A metadata.vendor_name Définissez cette option sur FIVETRAN.

Journal des modifications

Afficher le journal des modifications de cet analyseur

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.