Intégrer Snowflake à Google SecOps

Ce document explique comment intégrer Snowflake à Google Security Operations (Google SecOps).

Version de l'intégration : 5.0

Points de terminaison

L'intégration Snowflake utilise les points de terminaison de l'API Snowflake suivants :

  • /api/statements?async=false : utilisé pour tester la connexion à l'instance Snowflake. Ce point de terminaison exécute une requête simple pour vérifier la connectivité.

  • /api/statements?async=true : utilisé pour envoyer des requêtes personnalisées et simples à Snowflake. Le paramètre async=true est compatible avec l'exécution asynchrone et permet aux actions de récupérer de grands ensembles de données sans bloquer la plate-forme Google SecOps.

  • /api/statements/QUERY_ID : permet de récupérer les résultats d'une requête précédemment envoyée. L'intégration remplace l'espace réservé QUERY_ID par l'identifiant unique renvoyé par le point de terminaison /api/statements?async=true.

Avant de commencer

Pour utiliser l'intégration Snowflake, générez une clé privée et encodez-la au format base64.

Pour générer la clé privée, utilisez SnowSQL. Pour en savoir plus sur l'utilisation de SnowSQL, consultez Installer SnowSQL.

L'intégration Snowflake repose sur l'authentification par paire de clés. Pour en savoir plus sur les clés dans Snowflake, consultez Utiliser l'authentification par paire de clés.

Paramètres d'intégration

L'intégration Snowflake nécessite les paramètres suivants :

Paramètre Description
API Root

Obligatoire.

Racine de l'API de l'instance Snowflake.

La valeur par défaut est https://INSTANCE.snowflakecomputing.com.

Account

Obligatoire.

Nom du compte Snowflake.

Username

Obligatoire.

Nom d'utilisateur permettant d'accéder à Snowflake.

Private Key

Obligatoire.

Clé privée pour l'authentification.

Verify SSL

Obligatoire.

Si cette option est sélectionnée, l'intégration valide le certificat SSL lors de la connexion à Snowflake.

Cette option est sélectionnée par défaut.

Pour obtenir des instructions sur la configuration d'une intégration dans Google SecOps, consultez Configurer des intégrations.

Vous pourrez apporter des modifications ultérieurement, si nécessaire. Une fois que vous avez configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour savoir comment configurer et prendre en charge plusieurs instances, consultez Prise en charge de plusieurs instances.

Actions

Pour en savoir plus sur les actions, consultez Répondre aux actions en attente dans Votre espace de travail et Effectuer une action manuelle.

Exécuter une requête personnalisée

Utilisez l'action Exécuter une requête personnalisée pour exécuter une requête personnalisée dans Snowflake.

Cette action est asynchrone. Ajustez la valeur du délai d'expiration du script dans l'environnement de développement intégré (IDE) Google SecOps pour l'action, si nécessaire.

Cette action ne s'applique pas aux entités Google SecOps.

Entrées d'action

L'action Exécuter une requête personnalisée nécessite les paramètres suivants :

Paramètre Description
Query

Obligatoire.

Requête SQL à exécuter dans Snowflake.

L'action ajoute automatiquement le mot clé LIMIT à la requête. Ne définissez pas manuellement le mot clé LIMIT.

La requête n'accepte que les guillemets simples.

Database

Obligatoire.

Nom de la base de données Snowflake à interroger.

Schema

Facultatif.

Nom du schéma à interroger dans la base de données spécifiée.

Max Results To Return

Facultatif.

Nombre maximal de résultats à renvoyer pour la requête à chaque exécution de l'action.

La valeur par défaut est 50.

Sorties d'action

L'action Exécuter une requête personnalisée fournit les sorties suivantes :

Type de sortie de l'action Disponibilité
Pièce jointe au mur des cas Non disponible
Lien vers le mur des cas Non disponible
Table du mur des cas Non disponible
Table d'enrichissement Non disponible
Résultat JSON Disponible
Messages de sortie Disponible
Résultat du script Disponible
Résultat JSON

L'exemple suivant montre le résultat JSON reçu lors de l'utilisation de l'action Exécuter une requête personnalisée :

{
    "C_CUSTKEY": "CUSTOMER_KEY",
    "C_NAME": "Customer#ID",
    "C_ADDRESS": "9Ii4zQn9cX",
    "C_NATIONKEY": "14",
    "C_PHONE": "800-555-0175"

}
Messages de sortie

L'action Exécuter une requête personnalisée peut renvoyer les messages de sortie suivants :

Message affiché Description du message

Successfully executed query "QUERY" in Snowflake.

No results were found for the query "QUERY" in Snowflake.

L'action a réussi.
Error executing action "Execute Custom Query". Reason: ERROR_REASON

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script

Le tableau suivant répertorie la valeur de la sortie du résultat du script lorsque vous utilisez l'action Exécuter une requête personnalisée :

Nom du résultat du script Valeur
is_success True ou False

Exécuter une requête simple

Utilisez l'action Exécuter une requête simple pour exécuter une requête basée sur les paramètres fournis.

Cette action est asynchrone. Ajustez la valeur du délai avant expiration du script dans l'IDE Google SecOps pour l'action, si nécessaire.

Cette action ne s'applique pas aux entités Google SecOps.

Entrées d'action

L'action Exécuter une requête simple nécessite les paramètres suivants :

Paramètre Description
Database

Obligatoire.

Nom de la base de données à interroger.

Table

Obligatoire.

Nom de la table à interroger.

Schema

Facultatif.

Nom du schéma à interroger.

Where Filter

Facultatif.

Clause WHERE permettant de filtrer les résultats de la requête.

N'utilisez pas les mots clés LIMIT ni SORT. Ne définissez pas la chaîne WHERE dans la charge utile.

La requête n'accepte que les guillemets simples.

Fields To Return

Facultatif.

Liste de champs à renvoyer, séparés par une virgule.

Si vous ne configurez pas ce paramètre, l'action renvoie tous les champs.

La valeur par défaut est *.

Sort Field

Facultatif.

Valeur selon laquelle trier les résultats.

Sort Order

Facultatif.

Ordre de tri (croissant ou décroissant).

Les valeurs possibles sont les suivantes :

  • ASC
  • DESC

La valeur par défaut est ASC.

Max Results To Return

Facultatif.

Nombre maximal de résultats à renvoyer pour chaque exécution d'action.

La valeur par défaut est 50.

Sorties d'action

L'action Exécuter une requête simple fournit les sorties suivantes :

Type de sortie de l'action Disponibilité
Pièce jointe au mur des cas Non disponible
Lien vers le mur des cas Non disponible
Table du mur des cas Non disponible
Table d'enrichissement Non disponible
Résultat JSON Disponible
Messages de sortie Disponible
Résultat du script Disponible
Résultat JSON

L'exemple suivant montre le résultat JSON reçu lors de l'utilisation de l'action Exécuter une requête simple :

{
    "C_CUSTKEY": "CUSTOMER_KEY",
    "C_NAME": "Customer#ID",
    "C_ADDRESS": "9Ii4zQn9cX",
    "C_NATIONKEY": "14",
    "C_PHONE": "800-555-0175"

}
Messages de sortie

L'action Exécuter une requête simple peut renvoyer les messages de sortie suivants :

Message affiché Description du message

Successfully executed query "QUERY" in Snowflake.

No results were found for the query "QUERY" in Snowflake.

L'action a réussi.
Error executing action "Execute Simple Query". Reason: ERROR_REASON

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script

Le tableau suivant répertorie la valeur de la sortie des résultats du script lorsque vous utilisez l'action Exécuter une requête simple :

Nom du résultat du script Valeur
is_success True ou False

Ping

Utilisez l'action Ping pour tester la connectivité à Snowflake.

Cette action ne s'applique pas aux entités Google SecOps.

Entrées d'action

Aucun

Sorties d'action

L'action Ping fournit les résultats suivants :

Type de sortie de l'action Disponibilité
Pièce jointe au mur des cas Non disponible
Lien vers le mur des cas Non disponible
Table du mur des cas Non disponible
Table d'enrichissement Non disponible
Résultat JSON Non disponible
Messages de sortie Disponible
Résultat du script Disponible
Messages de sortie

L'action Ping peut renvoyer les messages de résultat suivants :

Message affiché Description du message
Successfully connected to the Snowflake server with the provided connection parameters! L'action a réussi.
Failed to connect to the Snowflake server! The error is ERROR_REASON

Échec de l'action.

Vérifiez la connexion au serveur, les paramètres d'entrée ou les identifiants.

Résultat du script

Le tableau suivant répertorie la valeur du résultat du script lorsque vous utilisez l'action Ping :

Nom du résultat du script Valeur
is_success True ou False

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