Comme avec Snowflake, « les journaux Databricks » peuvent désigner les données de sécurité que vous conservez dans des tables Delta ou le journal d’audit propre à Databricks dans la table système access.audit. L’exportation la plus simple pour les deux est une cellule de notebook. Interrogez avec Spark SQL, écrivez le résultat en JSON dans un volume Unity Catalog, puis téléchargez-le avec le Databricks CLI. Spark écrit le JSON délimité par des retours à la ligne, les fichiers sont donc prêts à être téléchargés.
Databricks est de plus en plus utilisé comme un lac de données de sécurité, et son journal d’audit est important en soi : qui s’est connecté, qui a créé des jetons, qui a modifié les permissions. Prime Core dispose de plus de 24 000 règles de détection uniques, associées à 676 techniques MITRE ATT&CK. Voici comment extraire les données, les nettoyer et les analyser gratuitement dans LogTotal.
Avant de commencer
Accès. La lecture de system.access.audit nécessite que le schéma système soit activé pour votre metastore et qu’un administrateur de compte ou de metastore vous accorde un droit SELECT. Pour vos propres tables, vous avez besoin des autorisations Unity Catalog habituelles.
Un volume pour écrire. Vous avez besoin d’un volume Unity Catalog dans lequel vous pouvez écrire, par exemple /Volumes/security/exports/logtotal, et que le Databricks CLI soit configuré sur votre machine.
Calcul. Un notebook a besoin d’un cluster ou d’une infrastructure serverless. Filtrez par date pour ne pas scanner plus que nécessaire.
Exporter depuis un notebook
(spark.sql("""
SELECT *
FROM system.access.audit
WHERE event_date = '2026-10-19'
AND action_name IN ('login', 'tokenLogin', 'generateDbToken')
""")
.write.mode("overwrite")
.json("/Volumes/security/exports/logtotal/audit_20261019"))
Spark écrit plusieurs fichiers part-*.json ainsi que des fichiers marqueurs. Téléchargez-les et combinez-les :
databricks fs cp -r dbfs:/Volumes/security/exports/logtotal/audit_20261019 ./audit_20261019
cat ./audit_20261019/part-*.json > databricks_audit_20261019.jsonl
Pour vos propres tables de sécurité, modifiez la requête : sélectionnez à partir de votre table et filtrez sur sa colonne timestamp.
Sans un notebook, l’API SQL Statement Execution peut exécuter la même requête sur un entrepôt SQL et retourner du JSON. Les lignes sont renvoyées sous forme de tableaux, avec les noms de colonnes dans un manifeste séparé, vous avez donc besoin d’une étape supplémentaire pour les transformer en objets. Pour tout ce qui est volumineux, la méthode du notebook est plus simple.
Que rechercher dans le journal d’audit
Examinez les connexions et les connexions par jeton depuis des adresses IP inhabituelles, les nouveaux jetons d’accès personnel, les modifications des autorisations et de l’appartenance à des groupes, ainsi que les modifications de la configuration de l’espace de travail ou du cluster en dehors des heures normales. Les téléchargements en masse de notebooks ou de résultats méritent également d’être examinés.
Téléchargez, nettoyez et examinez dans LogTotal
- Téléchargez. Ouvrir logtotal.com et déposez le fichier .jsonl.
- Nettoyez.
- Examinez.
Quand ça tourne mal
| Symptôme | Cause probable | Fix |
|---|---|---|
| system.access.audit introuvable | Schéma système non activé | Demandez à un administrateur de compte de l’activer |
| Permission refusée sur la table système | Aucun droit SELECT | Demandez à un administrateur de metastore l’autorisation |
| Impossible d’écrire sur le volume | WRITE VOLUME manquant | Utilisez un volume sur lequel vous pouvez écrire |
| Le téléchargement inclut _SUCCESS et d’autres fichiers | Fichiers marqueurs Spark | Combinez uniquement les fichiers part-*.json |
| Requête énorme et lente | Pas de filtre de date | Filtrez sur event_date |
FAQ
Le journal d’audit est-il également livré au stockage cloud ?
Les espaces de travail peuvent livrer des journaux d’audit à votre propre stockage également. Si cela est configuré, vous pouvez copier ces fichiers directement.
Est-ce que cela fonctionne sur des espaces de travail sans Unity Catalog ?
Les tables système nécessitent Unity Catalog. Les anciens espaces de travail dépendent de la livraison du journal d’audit au stockage, et vous écrivez vers des chemins DBFS au lieu de volumes.