Collecter les journaux Onfido
Cet analyseur extrait des champs des journaux SYSLOG et au format JSON d'Onfido, et les met en correspondance avec l'UDM. Il analyse le champ de message à l'aide de grok, gère les charges utiles JSON, le cas échéant, et met en correspondance des types d'événements produit spécifiques avec des types d'événements UDM. Cela inclut la définition du type d'événement sur USER_LOGIN
pour les connexions réussies et sur USER_UNCATEGORIZED
pour les autres événements. Il renseigne également les champs UDM pour les informations utilisateur, l'adresse IP source et les détails des résultats de sécurité.
Avant de commencer
- Assurez-vous de disposer d'une instance Google SecOps.
- Assurez-vous de disposer d'un accès privilégié au tableau de bord Onfido.
Configurer un flux dans Google SecOps pour ingérer les journaux Onfido
- Accédez à Paramètres du SIEM > Flux.
- Cliquez sur Ajouter.
- Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, Journaux Onfido).
- Sélectionnez Webhook comme type de source.
- Sélectionnez Onfido comme Type de journal.
- Cliquez sur Suivant.
- Facultatif: spécifiez des valeurs pour les paramètres d'entrée suivants :
- Délimiteur de fractionnement: délimiteur utilisé pour séparer les lignes de journal, par exemple
\n
. - Espace de noms des éléments: espace de noms des éléments.
- Libellés d'ingestion: libellé appliqué aux événements de ce flux.
- Délimiteur de fractionnement: délimiteur utilisé pour séparer les lignes de journal, par exemple
- Cliquez sur Suivant.
- Vérifiez la configuration du flux dans l'écran Finaliser, puis cliquez sur Envoyer.
- Cliquez sur Générer une clé secrète pour générer une clé secrète permettant d'authentifier ce flux.
- Copiez et stockez la clé secrète. Vous ne pourrez plus afficher cette clé secrète. Si nécessaire, vous pouvez générer une nouvelle clé secrète, mais cette action rend l'ancienne clé secrète obsolète.
- Dans l'onglet Détails, copiez l'URL du point de terminaison du flux dans le champ Informations sur le point de terminaison. Vous devez spécifier cette URL de point de terminaison dans votre application cliente.
- Cliquez sur OK.
Créer une clé API pour le flux webhook
Accédez à la console Google Cloud > Identifiants.
Cliquez sur Créer des identifiants, puis sélectionnez Clé API.
Limitez l'accès de la clé API à l'API Google Security Operations.
Spécifier l'URL du point de terminaison
- Dans votre application cliente, spécifiez l'URL du point de terminaison HTTPS fournie dans le flux de webhook.
Activez l'authentification en spécifiant la clé API et la clé secrète dans l'en-tête personnalisé au format suivant:
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
Recommandation: Spécifiez la clé API en tant qu'en-tête plutôt que dans l'URL.
Si votre client webhook n'est pas compatible avec les en-têtes personnalisés, vous pouvez spécifier la clé API et la clé secrète à l'aide de paramètres de requête au format suivant:
ENDPOINT_URL?key=API_KEY&secret=SECRET
Remplacez les éléments suivants :
ENDPOINT_URL
: URL du point de terminaison du flux.API_KEY
: clé API permettant de s'authentifier auprès de Google SecOps.SECRET
: clé secrète que vous avez générée pour authentifier le flux.
Configurer le webhook Onfido
- Connectez-vous au tableau de bord Onfido.
- Accédez à Paramètres > Webhooks.
- Cliquez sur Add Webhook (Ajouter un Webhook).
Spécifiez les valeurs des paramètres d'entrée suivants:
- URL du webhook: saisissez l'
<ENDPOINT_URL>
du point de terminaison de l'API Google SecOps.
- Événements:sélectionnez les événements qui doivent déclencher le webhook (par exemple, check.completed ou report.completed).
- URL du webhook: saisissez l'
Cliquez sur Enregistrer pour créer le webhook.
Tableau de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
category |
security_result.category_details |
La valeur du champ category du journal brut est attribuée à security_result.category_details . |
check_id |
metadata.product_log_id |
La valeur du champ check_id extraite du champ json_data dans le journal brut est attribuée à metadata.product_log_id . Si prod_evt_type est "Connexion réussie", la valeur "AUTHTYPE_UNSPECIFIED" est attribuée. |
metadata.event_timestamp |
L'horodatage de l'entrée de journal brute est converti en secondes d'epoch et attribué à metadata.event_timestamp . |
|
metadata.event_type |
Si prod_evt_type est "Connexion réussie", la valeur USER_LOGIN est attribuée. Sinon, USER_UNCATEGORIZED est attribué. |
|
metadata.product_name |
Le code de l'analyseur définit la valeur sur "ONFIDO". | |
prod_evt_type |
metadata.product_event_type |
La valeur du champ prod_evt_type du journal brut est attribuée à metadata.product_event_type . |
metadata.vendor_name |
Le code de l'analyseur définit la valeur sur "ONFIDO". | |
metadata.product_version |
Le code de l'analyseur définit la valeur sur "ONFIDO". | |
security_result.action |
security_result.action |
Si prod_evt_type est "Connexion réussie", la valeur ALLOW est attribuée. |
src_ip |
principal.ip |
La valeur du champ src_ip du journal brut est attribuée à principal.ip . |
user_email |
target.user.email_addresses |
La valeur du champ user_email du journal brut est attribuée à target.user.email_addresses . |
user_name |
target.user.user_display_name |
La valeur du champ user_name du journal brut est attribuée à target.user.user_display_name . |
Modifications
2023-03-10
- Analyseur nouvellement créé.