Condividi tramite


Auditing

si applica a:database SQL in Microsoft Fabric

Il controllo per i database SQL in Fabric è una funzionalità critica per la sicurezza e la conformità che consente alle organizzazioni di tenere traccia e registrare le attività del database. Il controllo supporta la conformità, il rilevamento delle minacce e le indagini forensi aiutando a rispondere a domande come chi ha eseguito l'accesso ai dati, quando e come.

Che cos'è il controllo SQL?

Il controllo SQL si riferisce al processo di acquisizione e archiviazione di eventi correlati all'attività del database. Questi eventi includono l'accesso ai dati, le modifiche dello schema, le modifiche alle autorizzazioni e i tentativi di autenticazione.

In Infrastruttura il controllo viene implementato a livello di database e supporta:

  • Monitoraggio della conformità (ad esempio: HIPAA, SOX)
  • Indagini sulla sicurezza
  • Informazioni operative

Obiettivo dell'audit

I log di controllo vengono scritti in una cartella di sola lettura in OneLake e possono essere sottoposti a query usando la sys.fn_get_audit_file_v2 funzione T-SQL o OneLake Explorer.

Per il database SQL in Fabric, i log di controllo vengono archiviati in OneLake: https://onelake.blob.fabric.microsoft.com/{workspace_id}/{artifact_id}/Audit/sqldbauditlogs/

Questi log non sono modificabili e accessibili agli utenti con autorizzazioni appropriate. È anche possibile scaricare i log usando OneLake Explorer o Azure Storage Explorer.

Opzioni di configurazione

Per impostazione predefinita, l'opzione Controlla tutto il controllo acquisisce tutti gli eventi, inclusi i completamenti batch e l'autenticazione riuscita e non riuscita.

Per essere più selettivi, scegliere tra scenari di controllo preconfigurati, ad esempio: modifiche alle autorizzazioni e tentativi di accesso, letture e scritture di dati e/o modifiche dello schema.

Ogni scenario preconfigurato è associato a gruppi di azioni di controllo specifici, ad esempio SCHEMA_OBJECT_ACCESS_GROUP, DATABASE_PRINCIPAL_CHANGE_GROUP. È anche possibile scegliere gli eventi da controllare in Eventi personalizzati. Gli utenti avanzati possono selezionare singoli gruppi di azioni per personalizzare il controllo in base alle proprie esigenze. Questo è l'ideale per i clienti con criteri di sicurezza interni rigorosi.

Per filtrare le query di accesso comuni o note, è possibile fornire espressioni di predicato in Transact-SQL (T-SQL) per filtrare gli eventi di controllo in base alle condizioni (ad esempio, per escludere istruzioni SELECT): WHERE statement NOT LIKE '%select%'.

Permissions

Per gestire il controllo utilizzando i ruoli di Fabric workspace (scelta consigliata), gli utenti devono avere l'appartenenza al ruolo Collaboratore di Fabric workspace o autorizzazioni superiori.

Per gestire il controllo con le autorizzazioni SQL:

  • Per configurare il controllo del database, gli utenti devono disporre dell'autorizzazione ALTER ANY DATABASE AUDIT.
  • Per visualizzare i log di controllo tramite T-SQL, gli utenti devono disporre dell'autorizzazione VIEW DATABASE SECURITY AUDIT.

Retention

Per impostazione predefinita, i dati di controllo vengono mantenuti a tempo indeterminato. È possibile configurare un periodo di conservazione personalizzato nella sezione Eliminare automaticamente i log dopo questa durata.

Configurare l'auditing per il database SQL dal portale Fabric

Per iniziare il controllo per un database SQL di Fabric:

  1. Passare a e aprire il database SQL nel portale di Fabric.
  2. Dal menu principale selezionare la scheda Sicurezza , quindi selezionare Gestisci controllo SQL. Screenshot del portale Fabric, che mostra la scheda Sicurezza e il pulsante Gestisci verifica SQL.
  3. Viene visualizzato il riquadro Gestisci controllo SQL .
  4. Selezionare il pulsante Salva eventi nei log di controllo SQL per abilitare il controllo.
  5. Configurare gli eventi da registrare nella sezione Eventi di database . Scegliere Controlla tutto (impostazione predefinita) per acquisire tutti gli eventi.
  6. Facoltativamente, configurare un criterio di conservazione in Conservazione.
  7. Facoltativamente, configurare un'espressione di predicato di comandi T-SQL da ignorare nel campo Espressione predicato .
  8. Seleziona Salva.

Consultare i log di audit

È possibile eseguire query sui log di controllo usando le funzioni T-SQL sys.fn_get_audit_file e sys.fn_get_audit_file_v2.

Nello script seguente è necessario specificare l'ID e l'ID database dell'area di lavoro. Entrambi si trovano nell'URL del portale Fabric. Ad esempio: https://fabric.microsoft.com/groups/<fabric workspace id>/sqldatabases/<fabric sql database id>. La prima stringa di identificatore unico nell'URL è l'ID dello spazio di lavoro Fabric, e la seconda stringa di identificatore unico è l'ID del database SQL.

  • Sostituire <fabric_workspace_id> con l'ID dell'area di lavoro Fabric. È possibile trovare facilmente l'ID di un'area di lavoro nell'URL, ovvero la stringa univoca all'interno di due / caratteri dopo /groups/ nella finestra del browser.
  • Sostituire <fabric sql database id> con il database SQL nell'ID del database Fabric. È possibile trovare facilmente l'ID dell'elemento di database nell'URL, ovvero la stringa univoca all'interno di due / caratteri dopo /sqldatabases/ nella finestra del browser.

Per esempio:

SELECT * FROM sys.fn_get_audit_file_v2(
  'https://onelake.blob.fabric.microsoft.com/<fabric workspace id>/<fabric sql database id>/Audit/sqldbauditlogs/',
  DEFAULT, DEFAULT, DEFAULT, DEFAULT );

In questo esempio vengono recuperati i log di controllo tra 2025-11-17T08:40:40Z e 2025-11-17T09:10:40Z.

SELECT *
FROM sys.fn_get_audit_file_v2(
    'https://onelake.blob.fabric.microsoft.com/<fabric workspace id>/<fabric sql database id>/Audit/sqldbauditlogs/',
    DEFAULT,
    DEFAULT,
    '2025-11-17T08:40:40Z',
    '2025-11-17T09:10:40Z')

Per altre informazioni, vedere sys.fn_get_audit_file e sys.fn_get_audit_file_v2.