Registrazione dei audit HIPAA

Per le aree di lavoro che utilizzano il profilo di sicurezza per la conformità con lo standard HIPAA, Lakebase acquisisce gli eventi di controllo e li invia alla tabella di sistema del log di controllo in system.access.audit Unity Catalog. Questa pagina spiega cosa viene registrato, come interrogarlo e i campi che identificano gli eventi Lakebase.

Tipi di log di audit

Lakebase comprende tre categorie di eventi di audit:

Tipo di log Cosa acquisisce
Log di controllo della console Azioni che gli utenti compiono nell'interfaccia di Lakebase, come creare un progetto o un ramo.
Log di audit API Richieste al piano di controllo di Lakebase, come chiamate API che creano o modificano progetti, branch e endpoint.
Registri di audit Postgres Attività a livello SQL all'interno del database, rilevata da pgaudit, l'estensione open source di audit logging per Postgres. Questo include DDL, cambiamenti di ruolo e accesso ai dati.

Dove vengono consegnati i log di audit

Gli eventi di audit vengono inviati alla tabella del sistema di log di audit in system.access.audit Unity Catalog. I record sono associati allo spazio di lavoro in cui si è verificata l'attività. Poiché il log di audit di uno spazio di lavoro di sicurezza con profilo di conformità fluisce in una tabella di sistema Unity Catalog, leggi e interroghi gli eventi di audit di Lakebase allo stesso modo in cui leggi altri eventi di audit di Azure Databricks.

Logging di audit SQL di Postgres

Per gli spazi di lavoro abilitati a HIPAA, Lakebase applica una configurazione fissa pgaudit che non puoi modificare:

Impostazione Value Effect
pgaudit.log all, -misc Registra tutte le classi di istruzioni tranne quelle varie. Questo copre la definizione dei dati (DDL), i cambiamenti di ruolo e privilegio, le letture, le scritture e le chiamate di funzione.
pgaudit.log_parameter off I parametri delle istruzioni non vengono registrati.
pgaudit.log_catalog off Le query contro i cataloghi di sistema non vengono registrate.

Registri di controllo delle query

Per interrogare i log di audit di Lakebase, è necessario:

Gli eventi di audit di Lakebase Postgres sono presenti nella system.access.audit tabella sotto il nome lakebasedel servizio. Per trovare questi eventi, filtra su service_name = 'lakebase'.

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;

Note

Applica il filtro su event_date anziché su event_time per migliorare le prestazioni delle query. event_date è una colonna di partizione.

Campi di record di audit

Gli eventi Lakebase utilizzano lo schema della tabella del sistema di audit log condiviso. Le colonne più utili per trovare e interpretare gli eventi di Lakebase sono service_name e action_name (che identificano l'evento), request_params (i dettagli dell'evento), user_identity (chi ha eseguito l'istruzione) e event_date (una colonna di partizione su cui filtrare per le prestazioni delle query). Per lo schema completo delle colonne, inclusi i dettagli del campo struct, vedi riferimento alla tabella di log di audit del sistema.

Gli eventi Lakebase Postgres (pgaudit) utilizzano il service_name valore lakebase. Il action_name campo utilizza il formato <class>.<command>, dove <class> è la classe di istruzioni pgaudit e <command> è il comando SQL. Entrambi sono in lettere minuscole e gli spazi vengono sostituiti con trattini bassi. Ad esempio, una CREATE TABLE affermazione è registrata come ddl.create_table. La <class> porzione è la classe di istruzioni di pgaudit dell'operazione, ad esempio ddl per la definizione dei dati, role per le modifiche a ruoli e privilegi o function per le chiamate di funzioni. Quali corsi vengono presentati dipende dal livello di revisione.

Per gli eventi Postgres, Lakebase popola le seguenti chiavi in request_params:

Key Descrzione
class La classe di istruzioni pgaudit, ad esempio DDL.
command Il comando SQL, ad esempio CREATE TABLE.
objectType Il tipo di oggetto interessato, come TABLE o ROLE.
objectName Nome dell'oggetto interessato.
statement L'istruzione SQL che è stata eseguita.
statementId Il numero di sequenza dell'affermazione.
subStatementId Il numero di sequenza della sotto-affermazione all'interno dell'affermazione.
endpointId L'endpoint Lakebase in cui è stata eseguita l'istruzione.

Importante

I statement valori e objectName possono contenere il testo del tuo SQL e i nomi degli oggetti del database. Tieni PHI fuori dal testo della query e dai nomi degli oggetti in modo che non appaia nei log di audit. Vedi Responsabilità condivisa per PHI.

Conservazione dei log di audit

La tabella del sistema di audit log conserva i registri per 365 giorni. Per conservare più a lungo i log di audit di Lakebase, esportali o copiali nel tuo sistema di archiviazione prima che scadano. Vedi Riferimento alla tabella di sistema dei log di audit.

Passaggi successivi

  • Abilita la conformità HIPAA: attiva il supporto alla conformità per i tuoi progetti. Vedi Abilita la conformità HIPAA.
  • Conformità HIPAA per Lakebase: Standard supportati e responsabilità condivisa. Vedi la conformità HIPAA per Lakebase.
  • Tabella del sistema di log di audit: Scopri lo schema della tabella di sistema di log di audit condiviso. Consultare la tabella di sistema del registro di controllo .