Aller au contenu principal

Journalisation d’audit HIPAA

Pour les Workspace qui utilisent le profil de sécurité de la conformité avec la norme HIPAA, Lakebase capture les événements d'audit et les transmet à la table système des Log d'audit à system.access.audit dans Unity Catalog. Cette page explique ce qui est journalisé, comment l'interroger et les champs qui identifient les événements Lakebase.

Types de Logs d'audit

Lakebase capture trois catégories d’événements d’audit :

Log type

Ce qu’il capture

Console audit Logs

Actions effectuées par les utilisateurs dans l'interface utilisateur de Lakebase, telles que la création d'un projet ou d'une Branch.

API audit Logs

Requêtes vers le plan de contrôle Lakebase, telles que les appels API qui créent ou modifient des projets, des Branch, et des Endpoint.

Logs d’audit Postgres

Activité au niveau SQL à l'intérieur de la base de données, capturée par pgaudit, l'extension de journalisation d'audit Postgres open source. Cela inclut le DDL, les changements de rôles et l'accès aux données.

Log type

Ce qu’il capture

Console audit Logs

Actions effectuées par les utilisateurs dans l'interface utilisateur de Lakebase, telles que la création d'un projet ou d'une Branch.

API audit Logs

Requêtes vers le plan de contrôle Lakebase, telles que les appels API qui créent ou modifient des projets, des Branch, et des Endpoint.

Logs d’audit Postgres

Activité au niveau SQL à l'intérieur de la base de données, capturée par pgaudit, l'extension de journalisation d'audit Postgres open source. Cela inclut le DDL, les changements de rôles et l'accès aux données.

Où les Logs d’audit sont livrés

Les événements d'audit sont transmis à la table système des journaux d'audit à system.access.audit dans Unity Catalog. Les enregistrements sont associés au workspace où l'activité a eu lieu. Comme le journal d'audit d'un workspace avec profil de sécurité de conformité est transmis à une table système Unity Catalog, vous pouvez lire et interroger les événements d'audit Lakebase de la même manière que les autres événements d'audit Databricks.

Journalisation d’audit Postgres SQL

Pour les Workspace compatibles HIPAA, Lakebase applique une configuration pgaudit fixe que vous ne pouvez pas modifier :

Paramètre

Valeur

Effet

pgaudit.log

all, -misc

Logs toutes les classes d’instructions à l’exception des instructions diverses. Ceci couvre la définition de données (DDL), les modifications de rôles et de privilèges, les lectures, les écritures et les appels de fonction.

pgaudit.log_parameter

off

Les paramètres d'instruction ne sont pas Logs.

pgaudit.log_catalog

off

Les requêtes effectuées sur les catalogues système ne sont pas Logs.

Paramètre

Valeur

Effet

pgaudit.log

all, -misc

Logs toutes les classes d’instructions à l’exception des instructions diverses. Ceci couvre la définition de données (DDL), les modifications de rôles et de privilèges, les lectures, les écritures et les appels de fonction.

pgaudit.log_parameter

off

Les paramètres d'instruction ne sont pas Logs.

pgaudit.log_catalog

off

Les requêtes effectuées sur les catalogues système ne sont pas Logs.

Query audit Logs

Pour interroger les logs d'audit Lakebase, vous avez besoin de :

Les événements d'audit de Lakebase Postgres se trouvent dans la table system.access.audit sous le nom de service lakebase. Pour trouver ces événements, filtrez sur service_name = 'lakebase'.

SQL
SELECT
event_time,
user_identity.email AS user_email,
action_name,
request_params
FROM system.access.audit
WHERE service_name = 'lakebase'
AND event_date >= current_date() - INTERVAL 7 DAYS
ORDER BY event_time DESC;
remarque

Filtrez sur event_date plutôt que sur event_time pour améliorer les performances des query. event_date est une colonne de partition.

Champs d'enregistrement d'audit

Les événements Lakebase utilisent le schéma de table système des Logs d’audit partagés. Les colonnes les plus utiles pour trouver et interpréter les événements Lakebase sont service_name et action_name (qui identifient l’événement), request_params (les détails de l’événement), user_identity (qui a exécuté l’instruction) et event_date (une colonne de partition à filtrer pour les performances de la query). Pour le schéma de colonne complet, y compris les détails des champs struct, consultez la référence de la table système des Logs d’audit.

Les événements Lakebase Postgres (pgaudit) utilisent la valeur service_name lakebase. Le champ action_name utilise le format <class>.<command>, où <class> est la classe d'instruction pgaudit et <command> est la commande SQL. Les deux sont mis en minuscules et les espaces sont remplacés par des traits de soulignement. Par exemple, une instruction CREATE TABLE est enregistrée sous la forme ddl.create_table. La partie <class> correspond à la classe d'instruction pgaudit de l'opération, telle que ddl pour la définition de données, role pour les changements de rôles et de privilèges, ou function pour les appels de fonction. Les classes qui apparaissent dépendent du niveau d'audit.

Pour les événements Postgres, Lakebase renseigne les clés suivantes dans request_params:

Clé

Description

class

La classe d'instruction pgaudit, telle que DDL.

command

La commande SQL, telle que CREATE TABLE.

objectType

Le type d’objet affecté, tel que TABLE ou ROLE.

objectName

Le nom de l’objet concerné.

statement

L'instruction SQL qui a été exécutée.

statementId

Le numéro de séquence de l'instruction.

subStatementId

Le numéro de séquence de la sous-instruction au sein de l'instruction.

endpointId

L’endpoint Lakebase où l’instruction a été exécutée.

Clé

Description

class

La classe d'instruction pgaudit, telle que DDL.

command

La commande SQL, telle que CREATE TABLE.

objectType

Le type d’objet affecté, tel que TABLE ou ROLE.

objectName

Le nom de l’objet concerné.

statement

L'instruction SQL qui a été exécutée.

statementId

Le numéro de séquence de l'instruction.

subStatementId

Le numéro de séquence de la sous-instruction au sein de l'instruction.

endpointId

L’endpoint Lakebase où l’instruction a été exécutée.

important

Les valeurs statement et objectName peuvent contenir le texte de votre SQL et les noms de vos objets de base de données. Ne pas inclure de PHI dans le texte de la requête et les noms d’objets afin qu’ils n’apparaissent pas dans les audit Logs. Voir Responsabilité partagée pour les PHI.

Rétention des Logs d'audit

La table système des Logs d'audit conserve les enregistrements pendant 365 jours. Pour conserver les Logs d'audit Lakebase plus longtemps, exportez-les ou copiez-les vers votre propre stockage avant qu'ils n'expirent. Voir la référence de la table système des Logs d’audit.

Étapes suivantes