Come abilitare SQL Server Audit e rivedere il registro di controllo

Il controllo di Microsoft SQL Server è fondamentale per identificare problemi di sicurezza e violazioni. Inoltre, il controllo di SQL Server è un requisito per la conformità a normative come PCI DSS e HIPAA.

Il primo passo è definire cosa controllare. Ad esempio, è possibile controllare gli accessi utente, la configurazione del server, le modifiche allo schema e le modifiche ai dati di controllo. Successivamente, è necessario scegliere quali funzioni di controllo di sicurezza da utilizzare. Le funzioni utili includono quanto segue:

  • Controllo C2
  • Comune di Conformità dei Criteri di
  • Controllo di Accesso
  • Controllo di SQL Server
  • SQL Trace
  • Eventi
  • Change Data Capture
  • DML, DDL, e Logon

Questo articolo è per gli amministratori di database (Dba) che sono alla ricerca mediante controllo C2, Comune criterio di Conformità e il Controllo di SQL Server. Non esamineremo strumenti di controllo di terze parti, anche se possono essere di grande aiuto, specialmente per ambienti più grandi e in settori regolamentati.

Abilitazione del controllo C2 e della conformità ai criteri comuni

Se al momento non si esegue il controllo di SQL Server, il punto di partenza più semplice è abilitare il controllo C2. Il controllo C2 è uno standard accettato a livello internazionale che può essere attivato in SQL Server. Controlla eventi come gli accessi degli utenti, le stored procedure e la creazione e la rimozione di oggetti. Ma è tutto o niente – non puoi scegliere ciò che controlla e può generare molti dati. Inoltre, il controllo C2 è in modalità di manutenzione, quindi sarà probabilmente rimosso in una versione futura di SQL Server.

La conformità ai criteri comuni è uno standard più recente che sostituisce il controllo C2. È stato sviluppato dall’Unione Europea e può essere abilitato nelle edizioni Enterprise e Datacenter di SQL Server 2008 R2 e versioni successive. Ma può causare problemi di prestazioni se il tuo server non è sufficientemente specificato per far fronte al sovraccarico extra.

Ecco come abilitare il controllo C2 in SQL Server 2017:

1. Aprire SQL Server Management Studio.

2. Connettersi al motore di database per il quale si desidera abilitare il controllo C2. Nella finestra di dialogo Connetti al server, assicurarsi che il tipo di server sia impostato su Motore di database e quindi fare clic su Connetti.

3. Nel pannello Esplora oggetti a sinistra, fare clic con il pulsante destro del mouse sull’istanza di SQL Server in alto e selezionare Proprietà dal menu.

4. Nella finestra Proprietà server, fare clic su Sicurezza in Seleziona una pagina.

5. Nella pagina Sicurezza, è possibile configurare il monitoraggio di accesso. Per impostazione predefinita, vengono registrati solo gli accessi non riusciti. In alternativa, puoi controllare solo gli accessi riusciti o entrambi gli accessi non riusciti e riusciti.

 SQL Server Audit Configurazione del controllo di accesso

SQL Server Audit Configurazione di Access Auditing

Figura 1. Configurazione del controllo degli accessi

6. Selezionare Abilita traccia di controllo C2 in Opzioni.

7. Se si desidera abilitare C2 Common Criteria Compliance auditing, selezionare Abilita Common Criteria compliance.

La conformità ai criteri comuni (CC) è uno standard flessibile che può essere implementato con diversi livelli di garanzia di valutazione (EAL), da 1 a 7. Gli EAL superiori hanno un processo di verifica più impegnativo. Quando si seleziona Abilita conformità criteri comuni in SQL Server, si sta abilitando CC Compliance EAL1. È possibile configurare SQL Server manualmente per EAL4+.

L’abilitazione della conformità CC modifica il comportamento di SQL Server. Ad esempio, le autorizzazioni di NEGAZIONE a livello di tabella avranno la precedenza sulle sovvenzioni a livello di colonna e gli accessi riusciti e non riusciti verranno controllati. Inoltre, è abilitata la protezione delle informazioni residue (RIP), che sovrascrive le allocazioni di memoria con un modello di bit prima che vengano utilizzate da una nuova risorsa.

8. Fare clic su OK.

9. In base alle opzioni selezionate, potrebbe essere richiesto di riavviare SQL Server. Se viene visualizzato questo messaggio, fare clic su OK nella finestra di avviso. Se è stata abilitata la conformità ai criteri comuni C2, riavviare il server. In caso contrario, fare nuovamente clic con il pulsante destro del mouse sull’istanza di SQL Server in Esplora oggetti e selezionare Riavvia dal menu. Nella finestra di dialogo Avviso, fare clic su Sì per confermare che si desidera riavviare SQL Server.

Abilitazione di SQL Server Audit

È possibile abilitare SQL Server auditing invece di C2 auditing; è anche possibile scegliere di abilitare entrambi. Gli oggetti di controllo di SQL Server possono essere configurati per raccogliere eventi a livello di server o di database di SQL Server.

Crea oggetto di controllo server

Creiamo un oggetto di controllo SQL Server a livello di server:

1. Nel pannello Esplora oggetti a sinistra, espandere Sicurezza.

2. Fare clic con il pulsante destro del mouse su Audit e selezionare Nuovo audit… dal menu. Questo creerà un nuovo oggetto di controllo SQL Server per il controllo a livello di server.

3. Nella finestra Crea controllo, assegnare alle impostazioni di controllo un nome nel nome controllo

4. Specificare cosa dovrebbe accadere se il controllo di SQL Server non riesce utilizzando l’errore del registro di controllo on È possibile scegliere Continua o scegliere di arrestare il server o interrompere le operazioni del database sottoposte a controllo. Se si seleziona Operazione non riuscita, le operazioni di database non controllate continueranno a funzionare.

Controllo SQL Server Creazione di un oggetto di controllo SQL Server a livello di server

SQL Server Audit Creazione di un oggetto SQL Server audit a livello di server

Figura 2. Creazione di un oggetto di controllo SQL Server a livello di server

5. Nel menu a discesa Destinazione di controllo, è possibile scegliere di scrivere la traccia di controllo SQL in un file o di controllare gli eventi nel registro di sicurezza di Windows o nel registro eventi dell’applicazione. Se si sceglie un file, è necessario specificare un percorso per il file.

Si noti che se si desidera scrivere nel registro eventi di sicurezza di Windows, SQL Server dovrà essere data l’autorizzazione. Per semplicità, selezionare il registro eventi dell’applicazione. Inoltre, è possibile includere un filtro come parte dell’oggetto di controllo per fornire un insieme ristretto di risultati; i filtri devono essere scritti in Transact-SQL (T-SQL).

6. Fare clic su OK.

7. Ora troverai la nuova configurazione di controllo in Esplora oggetti sotto Audit. Fare clic con il pulsante destro del mouse sulla nuova configurazione di controllo e selezionare Abilita controllo dal menu.

8. Fare clic su Chiudi nella finestra di dialogo Abilita controllo.

Crea oggetto di controllo del database

Per creare un oggetto di controllo SQL Server per il controllo a livello di database, il processo è leggermente diverso e devi prima creare almeno un oggetto di controllo a livello di server.

1. Espandere i database in Esplora oggetti ed espandere il database su cui si desidera configurare il controllo.

2. Espandere la cartella Sicurezza, fare clic con il pulsante destro del mouse su Specifiche di controllo del database e selezionare Nuove specifiche di controllo del database… dal menu.

 SQL Server Audit Creazione di una specifica di audit server per il controllo a livello di database

SQL Server Audit Creazione di una specifica di audit server per il controllo a livello di database

Figura 3. Creazione di una specifica di controllo del server per il controllo a livello di database

3. Nella finestra Proprietà in Azioni, utilizzare i menu a discesa per configurare uno o più tipi di azioni di controllo, selezionando le istruzioni da controllare (ad esempio ELIMINA o INSERISCI), la classe dell’oggetto su cui viene eseguita l’azione e così via.

4. Al termine, fare clic su OK, quindi abilitare l’oggetto di controllo facendo clic con il pulsante destro del mouse e selezionando Abilita specifica di controllo del database.

Visualizzazione dei registri di controllo di SQL Server

C2 Audit I registri di controllo di SQL Server vengono memorizzati nella directory dati predefinita dell’istanza di SQL Server. Ogni file di registro può essere un massimo di 200 megabyte. Un nuovo file viene creato automaticamente quando viene raggiunto il limite.

Una soluzione nativa che si consiglia di visualizzare i registri di controllo di SQL Server chiamato Log File Viewer. Per utilizzarlo, eseguire le seguenti operazioni:

1. In SQL Server Management Studio, nel pannello Esplora oggetti, espandere Sicurezza e

2. Fare clic con il pulsante destro del mouse sull’oggetto di controllo che si desidera visualizzare e selezionare Visualizza registri di controllo dal menu.

3. Nel visualizzatore di file di registro, i registri verranno visualizzati sul lato destro. Indipendentemente dal fatto che i registri siano scritti in un file o nel registro eventi di Windows, Visualizzatore file log visualizzerà i registri.

4. Nella parte superiore di Log File Viewer, è possibile fare clic su Filtro per personalizzare le voci di registro visualizzate. I registri dei file di SQL Server vengono salvati .formato sqlaudit e non sono leggibili, quindi Log File Explorer consente di fare clic su Esporta per salvare i registri in una delimitata da virgole .formato file di registro.

Controllo di SQL Server Revisione della registrazione di controllo di SQL Server nel visualizzatore di file di registro

SQL Server Audit Revisione SQL Server audit registrazione nel visualizzatore di file di registro

Figura 4. Revisione di SQL Server audit registrazione nel visualizzatore di file di registro

Consulente informatico e autore specializzato in tecnologie di gestione e sicurezza. Russell ha più di 15 anni di esperienza nel settore IT, ha scritto un libro sulla sicurezza di Windows, e ha coautore di un testo per Microsoft Official Academic Course (MOAC) serie.



+