Condividi tramite


Creazione e gestione di controlli con Transact-SQL

L'utilizzo di Management Studio o Transact-SQL per eseguire istruzioni DDL (Data Definition Language) Transact-SQL, funzioni e viste a gestione dinamica o viste del catalogo, consente di creare soluzioni relative a SQL Server Audit semplici o complesse per l'ambiente SQL Server utilizzato.

Argomenti di riferimento

È possibile utilizzare istruzioni DDL, viste e funzioni a gestione dinamica e viste del catalogo per implementare tutti gli aspetti di SQL Server Audit.

Autorizzazioni

A ogni funzionalità e comando per SQL Server Audit sono associati requisiti di autorizzazione singoli.

Per creare, modificare o eliminare un controllo del server o una specifica del controllo del server, le entità server devono disporre dell'autorizzazione ALTER ANY SERVER AUDIT o CONTROL SERVER. Per creare, modificare o eliminare una specifica del controllo del database, le entità di database devono disporre dell'autorizzazione ALTER ANY DATABASE AUDIT o dell'autorizzazione ALTER o CONTROL per il database. Le entità devono inoltre disporre dell'autorizzazione necessaria per connettersi al database o dell'autorizzazione ALTER ANY SERVER AUDIT o CONTROL SERVER.

Se non specificato diversamente, per visualizzare le viste del catalogo un'entità deve disporre di uno degli elementi seguenti:

  • Appartenenza al ruolo predefinito del server sysadmin.

  • Autorizzazione CONTROL SERVER.

  • Autorizzazione VIEW SERVER STATE.

  • Autorizzazione ALTER ANY AUDIT.

  • Autorizzazione VIEW AUDIT STATE, che concede all'entità solo l'accesso alla vista del catalogo sys.server_audits.

Per utilizzare le viste a gestione dinamica, un'entità deve disporre dell'autorizzazione VIEW SERVER STATE o ALTER ANY AUDIT.

Per ulteriori informazioni su come concedere diritti e autorizzazioni, vedere GRANT (Transact-SQL).

Nota di attenzioneAttenzione

Le entità nel ruolo sysadmin possono alterare qualsiasi componente del controllo, mentre quelle nel ruolo db_owner possono alterare le specifiche del controllo in un database. SQL Server Audit convaliderà una situazione in cui un accesso che crea o modifica una specifica del controllo dispone almeno dell'autorizzazione ALTER ANY DATABASE AUDIT, ma non esegue alcuna convalida quando si collega un database. È necessario presupporre che tutte le specifiche del controllo del database siano attendibile come le entità nel ruolo sysadmin o db_owner.

Istruzioni DDL (Data Definition Language)

Viste e funzioni dinamiche

Nella tabella seguente vengono elencate le viste e le funzioni dinamiche che è possibile utilizzare per il controllo di SQL Server.

Viste e funzioni dinamiche

Descrizione

sys.dm_audit_actions

Restituisce una riga per ogni azione di controllo che può essere segnalata nel log di controllo e per ogni gruppo di azioni di controllo che possono essere configurate come parte di SQL Server Audit.

sys.dm_server_audit_status

Fornisce informazioni sullo stato corrente del controllo.

sys.dm_audit_class_type_map

Restituisce una tabella che esegue il mapping del campo class_type nel log di controllo al campo class_desc in sys.dm_audit_actions.

fn_get_audit_file

Restituisce informazioni da un file di controllo creato da un controllo del server.

Nella tabella seguente vengono elencate le viste del catalogo che è possibile utilizzare per il controllo di SQL Server.

Viste del catalogo

Descrizione

sys.database_ audit_specifications

Contiene informazioni sulle specifiche del controllo del database in un controllo di SQL Server in un'istanza del server.

sys.database_audit_specification_details

Contiene informazioni sulle specifiche del controllo del database in un controllo di SQL Server in un'istanza del server per tutti i database.

sys.server_audits

Contiene una riga per ogni controllo di SQL Server in un'istanza del server.

sys.server_audit_specifications

Contiene informazioni sulle specifiche del controllo del server in un controllo di SQL Server in un'istanza del server.

sys.server_audit_specifications_details

Contiene informazioni sui dettagli (azioni) della specifica del controllo del server in un controllo di SQL Server in un'istanza del server.

sys.server_file_audits

Contiene informazioni estese sul tipo di controllo dei file in un controllo di SQL Server in un'istanza del server.