Azure Synapse Analytics audit log format

Tip

Microsoft Fabric Data Warehouse è un data warehouse relazionale su scala aziendale su una base data lake, con un'architettura futura, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con il data warehousing, iniziare con Fabric Data Warehouse. I carichi di lavoro esistenti del pool SQL dedicated possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.

Azure Synapse Analytics audit monitora gli eventi del database e li scrive su Archiviazione di Azure, oppure li invia a Hub eventi di Azure o Monitoraggio di Azure Log Analytics per l'elaborazione e l'analisi a valle.

Convenzioni di denominazione

Audit blob

I log di audit memorizzati in Archiviazione BLOB di Azure sono memorizzati in un container chiamato sqldbauditlogs. La gerarchia delle directory all'interno del contenitore è <ServerName>/<DatabaseName>/<AuditName>/<Date>/. Il formato del nome del file blob è <CreationTime>_<FileNumberInSession>.xel, dove CreationTime utilizza il formato UTC hh_mm_ss_ms ed FileNumberInSession è un indice in esecuzione quando una sessione copre più file blob.

Ad esempio, il seguente percorso è valido per database Database1 su server Server1:

Server1/Database1/SqlDbAuditing_ServerAudit_NoRetention/2019-02-03/12_23_30_794_0.xel

Event Hubs

Gli eventi di audit vengono scritti nello spazio dei nomi e nell'hub eventi configurati per l'audit. Gli eventi sono catturati nel corpo degli eventi Apache Avro e utilizzano la formattazione JSON con codifica UTF-8.

Log Analytics

Gli eventi di audit vengono scritti sulla AzureDiagnostics tabella nell'area di lavoro Log Analytics configurata. Gli eventi di audit del database utilizzano la SQLSecurityAuditEvents categoria, e le operazioni di supporto Microsoft utilizzano la DevOpsOperationsAudit categoria. Per indicazioni sulle query, consulta Log Analytics queries.

Campi di log di audit

Nome (blob) Nome (Event Hubs/Log Analytics) Description Tipo di BLOB Tipo Event Hubs/Log Analytics
action_id action_id_s ID dell'azione varchar(4) string
action_name action_name_s Nome dell'azione N/A string
additional_information additional_information_s Qualsiasi informazione aggiuntiva sull'evento, memorizzata come XML nvarchar(4000) string
affected_rows affected_rows_d Numero di righe interessate dalla query bigint int
application_name application_name_s Nome dell'applicazione client nvarchar(128) string
audit_schema_version audit_schema_version_d Sempre 1 int int
class_type class_type_s Tipo di entità verificabile su cui avviene l'audit varchar(2) string
class_type_desc class_type_description_s Descrizione dell'entità verificabile su cui avviene la verifica N/A string
client_ip client_ip_s IP di origine dell'applicazione client nvarchar(128) string
connection_id N/A ID della connessione nel server GUID N/A
data_sensitivity_information data_sensitivity_information_s Tipi di informazioni ed etichette di riservatezza restituiti dalla query verificata, in base alle colonne classificate nel database. Per maggiori informazioni, vedi Azure Synapse Analytics security: Threat protection nvarchar(4000) string
database_name database_name_s Il contesto del database in cui è avvenuta l'azione sysname string
database_principal_id database_principal_id_d ID del contesto utente del database in cui viene eseguita l'azione int int
database_principal_name database_principal_name_s Nome del contesto utente del database in cui viene eseguita l'azione sysname string
duration_milliseconds duration_milliseconds_d Durata dell'esecuzione delle query in millisecondi bigint int
event_time event_time_t Data e ora in cui viene avviata l'azione verificabile datetime2 datetime
host_name N/A Nome host del cliente string N/A
is_column_permission is_column_permission_s Indicatore che indica se si tratta di un'autorizzazione a livello di colonna. 1 = vero, 0 = falso bit string
N/A is_server_level_audit_s Flag che indica se questo audit è a livello server N/A string
object_ id object_id_d ID dell'entità in cui si è verificato il controllo. Questo include : oggetti server, database, oggetti database e oggetti schema. 0 se l'entità è il server stesso o se l'audit non viene eseguito a livello di oggetto int int
object_name object_name_s Nome dell'entità in cui si è verificato il controllo. Questo include : oggetti server, database, oggetti database e oggetti schema. 0 se l'entità è il server stesso o se l'audit non viene eseguito a livello di oggetto sysname string
obo_middle_tier_app_id obo_middle_tier_app_id_s L'ID dell'applicazione di livello medio che si collegava ad Azure Synapse Analytics tramite OBO access. varchar(120) string
permission_bitmask permission_bitmask_s Se applicabile, mostra le autorizzazioni concesse, negate o revocate varbinary(16) string
response_rows response_rows_d Numero di righe restituite nell'insieme dei risultati bigint int
schema_name schema_name_s Contesto dello schema in cui si è verificata l'azione. NULL per audit che avvengono al di fuori di uno schema sysname string
N/A securable_class_type_s Oggetto securabile che si mappa all'oggetto class_type sottoposto a revisione N/A string
sequence_group_id sequence_group_id_g Identificatore univoco varbinary GUID
sequence_number sequence_number_d Viene tenuta traccia della sequenza dei record all'interno di un singolo record di controllo con dimensioni troppo elevate per il buffer di scrittura dei controlli. Azure Synapse Analytics audit memorizza 4000 caratteri di dati per i campi caratteri in un record di audit. Quando ci sono più di 4000 caratteri, qualsiasi dato oltre i primi 4000 caratteri verrà troncato int int
server_instance_name server_instance_name_s Nome dell'istanza server in cui è avvenuto l'audit sysname string
server_principal_id server_principal_id_d ID del contesto di accesso in cui viene eseguita l'azione int int
server_principal_name server_principal_name_s Accesso attuale sysname string
server_principal_sid server_principal_sid_s SID di login attuale varbinary string
session_id session_id_d ID della sessione in cui si è verificato l'evento smallint int
session_server_principal_name session_server_principal_name_s Server principal per la sessione sysname string
statement statement_s Istruzione T-SQL eseguita (se presente) nvarchar(4000) string
succeeded succeeded_s Indica se l'azione che ha generato l'evento è riuscita. Per eventi diversi dal login e dal batch, questo riporta solo se il controllo dei permessi è riuscito o fallito, non l'operazione. 1 = successo, 0 = fallimento bit string
target_database_principal_id target_database_principal_id_d Il principale del database su cui viene eseguita l'operazioneGRANT//DENYREVOKE. 0 se non applicabile int int
target_database_principal_name target_database_principal_name_s Utente di destinazione dell'azione. NULL se non applicabile string string
target_server_principal_id target_server_principal_id_d Entità server su cui viene eseguita l'operazioneGRANT/DENY/REVOKE. Restituisce 0 se non applicabile int int
target_server_principal_name target_server_principal_name_s Accesso di destinazione dell'azione. NULL se non applicabile sysname string
target_server_principal_sid target_server_principal_sid_s SID del login di destinazione. NULL se non applicabile varbinary string
transaction_id transaction_id_d Non populat for Azure Synapse Analytics bigint int
user_defined_event_id user_defined_event_id_d ID evento definito dall'utente passato come argomento a sp_audit_write. NULL per gli eventi di sistema (impostazione predefinita) e non zero per l'evento definito dall'utente. Per maggiori informazioni, vedi sp_audit_write (Transact-SQL) smallint int
user_defined_information user_defined_information_s Informazioni definite dall'utente passate come argomento a sp_audit_write. NULL per gli eventi di sistema (predefinito) e non nullo per gli eventi definiti dall'utente. Per maggiori informazioni, vedi sp_audit_write (Transact-SQL) nvarchar(4000) string