Creazione di un controllo del server e di una specifica del controllo del serverCreate a Server Audit and Server Audit Specification

In questo argomento viene illustrato come creare un controllo del server e la specifica di un controllo del server in SQL Server 2017SQL Server 2017 tramite SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.This topic describes how to create a server audit and server audit specification in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. Ilcontrollo di un'istanza di SQL ServerSQL Server o di un database di SQL ServerSQL Server comporta il rilevamento e la registrazione di eventi che si verificano nel sistema.Auditing an instance of SQL ServerSQL Server or a SQL ServerSQL Server database involves tracking and logging events that occur on the system. L'oggetto SQL Server Audit raccoglie un'unica istanza di azioni a livello di server o di database e gruppi di azioni da monitorare.The SQL Server Audit object collects a single instance of server- or database-level actions and groups of actions to monitor. Il controllo si trova a livello dell'istanza di SQL ServerSQL Server .The audit is at the SQL ServerSQL Server instance level. Per ogni istanza di SQL ServerSQL Server è possibile disporre di più controlli.You can have multiple audits per SQL ServerSQL Server instance. L'oggetto specifica controllo server appartiene a un controllo.The Server Audit Specification object belongs to an audit. È possibile creare una specifica del controllo del server per ogni controllo, poiché entrambi vengono creati nell'ambito dell'istanza di SQL ServerSQL Server.You can create one server audit specification per audit, because both are created at the SQL ServerSQL Server instance scope. Per altre informazioni, vedere SQL Server Audit (Motore di database).For more information, see SQL Server Audit (Database Engine).

Contenuto dell'argomentoIn This Topic

Prima di iniziare Before You Begin

Limitazioni e restrizioni Limitations and Restrictions

  • È necessario che un controllo esista prima che sia possibile creare la specifica del controllo del server.An audit must exist before creating a server audit specification for it. Quando viene creata una specifica del controllo del server, il relativo stato è disabilitato.When a server audit specification is created, it is in a disabled state.

  • L'istruzione CREATE SERVER AUDIT è nell'ambito di una transazione.The CREATE SERVER AUDIT statement is in a transaction's scope. L'esecuzione del rollback della transazione comporta il rollback anche per l'istruzione.If the transaction is rolled back, the statement is also rolled back.

Sicurezza Security

Autorizzazioni Permissions

  • Per creare, modificare o eliminare un controllo del server, le entità devono disporre dell'autorizzazione ALTER ANY SERVER AUDIT o CONTROL SERVER.To create, alter, or drop a server audit, principals require the ALTER ANY SERVER AUDIT or the CONTROL SERVER permission.

  • Gli utenti che dispongono dell'autorizzazione ALTER ANY SERVER AUDIT possono creare specifiche del controllo del server e associarle a qualsiasi controllo.Users with the ALTER ANY SERVER AUDIT permission can create server audit specifications and bind them to any audit.

  • Dopo essere stata creata, la specifica del controllo del server può essere visualizzata dalle entità con autorizzazione CONTROL SERVER o ALTER ANY SERVER AUDIT, dell'account sysadmin oppure dalle entità che possono accedere esplicitamente al controllo.After a server audit specification is created, it can be viewed by principals with the CONTROL SERVER or ALTER ANY SERVER AUDIT permissions, the sysadmin account, or principals having explicit access to the audit.

Utilizzo di SQL Server Management Studio Using SQL Server Management Studio

Per creare un controllo del serverTo create a server audit

  1. In Esplora oggetti espandere la cartella Sicurezza .In Object Explorer, expand the Security folder.

  2. Fare clic con il pulsante destro del mouse sulla cartella Controlli , quindi scegliere Nuovo controllo....Right-click the Audits folder and select New Audit….

    Nella pagina Generale della finestra di dialogo Crea controllo sono disponibili le opzioni indicate di seguito.The following options are available on the General page of the Create Audit dialog box.

    Nome controlloAudit name
    Nome del controllo.The name of the audit. Tale nome viene generato automaticamente quando si crea un nuovo controllo, ma è modificabile.This is generated automatically when you create a new audit but is editable.

    Ritardo coda (in millisecondi)Queue delay (in milliseconds)
    Indica la quantità di tempo in millisecondi che può trascorrere prima che venga forzata l'elaborazione delle azioni di controllo.Specifies the amount of time in milliseconds that can elapse before audit actions are forced to be processed. Il valore 0 indica un recapito sincrono.A value of 0 indicates synchronous delivery. Il valore minimo predefinito è 1000 (1 secondo).The default minimum value is 1000 (1 second). Il valore massimo è 2.147.483.647 (2.147.483,647 secondi o 24 giorni, 20 ore, 31 minuti e 23,647 secondi).The maximum is 2,147,483,647 (2,147,483.647 seconds or 24 days, 20 hours, 31 minutes, 23.647 seconds).

    In caso di errore del log di controllo:On Audit Log Failure:
    Continue Continue
    SQL ServerSQL Server Le operazioni di SQL Server continuano. SQL ServerSQL Server operations continue. I record di controllo non vengono mantenuti.Audit records are not retained. Il controllo consente di continuare il tentativo di registrazione di eventi e verrà ripreso se viene risolta la condizione di errore.The audit continues to attempt to log events and will resume if the failure condition is resolved. Selezionando l'opzione Continua si potrà consentire un'attività non certificata che potrebbe violare i criteri di sicurezza.Selecting the Continue option can allow unaudited activity which could violate your security policies. Selezionare questa opzione quando il funzionamento del Motore di databaseDatabase Engine è più importante della gestione di un controllo completo.Select this option when continuing operation of the Motore di databaseDatabase Engine is more important than maintaining a complete audit. Si tratta della selezione predefinita.This is the default selection.

    Arresta serverShut down server
    Viene forzata la chiusura del server quando risulta impossibile scrivere dati nella destinazione di controllo da parte dell'istanza del server preposta a tale compito.Forces a server shut down when the server instance writing to the target cannot write data to the audit target. L'account di accesso che esegue questa operazione deve avere l'autorizzazione SHUTDOWN .The login issuing this must have the SHUTDOWN permission. In caso contrario, questa funzione non verrà eseguita e verrà generato un messaggio di errore.If the logon does not have this permission, this function will fail and an error message will be raised. Non viene generato alcun evento controllato.No audited events occur. Selezionare questa opzione quando un errore a livello di controllo potrebbe compromettere la sicurezza o l'integrità del sistema.Select this option when an audit failure could compromise the security or integrity of the system.

    Errore operazioneFail operation
    Nei casi in cui non è possibile scrivere nel log di controllo tramite SQL ServerSQL Server Audit, questa opzione può impedire le azioni del database qualora provocassero eventi controllati.In cases where the SQL ServerSQL Server Audit cannot write to the audit log this option causes database actions to fail if they would otherwise cause audited events. Non viene generato alcun evento controllato.No audited events occur. Le azioni che non provocano eventi controllati possono continuare.Actions which do not cause audited events can continue. Il controllo consente di continuare il tentativo di registrazione di eventi e verrà ripreso se viene risolta la condizione di errore.The audit continues to attempt to log events and will resume if the failure condition is resolved. Selezionare questa opzione quando la gestione di un controllo completo è più importante dell'accesso completo al Motore di databaseDatabase Engine.Select this option when maintaining a complete audit is more important than full access to the Motore di databaseDatabase Engine.

    Importante

    Quando il controllo è in uno stato di errore, l'esecuzione di eventi controllati può continuare tramite la connessione amministrativa dedicata.When the audit is in a failed state, the Dedicated Administrator Connection can continue to perform audited events.

    ElencoDestinazione controllo Audit destination list
    Indica la destinazione per i dati del controllo.Specifies the target for auditing data. Le opzioni disponibili sono un file binario, il registro applicazioni di Windows o il registro di sicurezza di Windows.The available options are a binary file, the Windows Application log, or the Windows Security log. SQL ServerSQL Server Se non si configurano impostazioni aggiuntive in Windows, non sarà possibile scrivere nel registro di sicurezza di Windows. cannot write to the Windows Security log without configuring additional settings in Windows. Per altre informazioni, vedere Scrivere eventi di controllo di SQL Server nel registro di sicurezza.For more information, see Write SQL Server Audit Events to the Security Log.

    Percorso fileFile path
    Indica il percorso della cartella in cui vengono scritti i dati del controllo quando in Destinazione controllo è specificato un file.Specifies the location of the folder where audit data is written when the Audit destination is a file.

    Puntini di sospensione (...)Ellipsis (…)
    Apre la finestra di dialogo Individua cartella –nome_serve per specificare un percorso o creare una cartella in cui viene scritto il file di controllo.Opens the Locate Folder –server_name dialog box to specify a file path or create a folder where the audit file is written.

    Limite massimo di file di controllo:Audit File Maximum Limit:
    Numero massimo file di rollover Maximum rollover files
    Specifica che quando viene raggiunto il numero massimo di file di controllo, i file di controllo meno recenti vengono sovrascritti dal nuovo contenuto del file.Specifies that, when the maximum number of audit files is reached, the oldest audit files are overwritten by new file content.

    Numero massimo di fileMaximum files
    Specifica che quando viene raggiunto il numero massimo di file di controllo, qualsiasi azione che causa la generazione di eventi di controllo aggiuntivi avrà esito negativo e verrà visualizzato un errore.Specifies that, when the maximum number of audit files is reached, any action that causes additional audit events to be generated will fail with an error.

    Casella di controlloSenza limiti Unlimited check box
    Quando si seleziona la casella di controllo Senza limiti in Numero massimo file di rollover , non viene applicato alcun limite al numero di file di controllo che verranno creati.When the Unlimited check box under Maximum rollover files is selected, there is no limit imposed on the number of audit files that will be created. La casella di controllo Senza limiti viene selezionata per impostazione predefinita e si applica alle selezioni Numero massimo file di rollover e Numero massimo di file .The Unlimited check box is selected by default and applies to both the Maximum rollover files and Maximum files selections.

    CasellaNumero di file Number of files box
    Specifica il numero di file di controllo da creare, fino a un massimo di 2.147.483.647.Specifies the number of audit files to be created, up to 2,147,483,647. Questa opzione è disponibile solo se non è selezionato Senza limiti .This option is only available if Unlimited is unchecked.

    Dimensioni massime del fileMaximum file size
    Specifica la dimensione massima per un file di controllo in megabyte (MB), gigabyte (GB) o terabyte (TB).Specifies the maximum size for an audit file in either megabytes (MB), gigabytes (GB), or terabytes (TB). È possibile specificare una dimensione compresa tra 1024 MB e 2.147.483.647 TB.You can specify between 1024 MB and 2,147,483,647 TB. Se si seleziona la casella di controllo Senza limiti non si impono alcun limite alle dimensioni del file.Selecting the Unlimited check box does not place a limit on the size of the file. Se si specifica un valore minore di 1024 MB, verrà restituito un errore.Specifying a value lower than 1024 MB will fail, returning an error. La casella di controllo Senza limiti è selezionata per impostazione predefinita.The Unlimited check box is selected by default.

    Casella di controlloRiserva spazio su disco Reserve disk space check box
    Indica che sul disco viene preallocata una quantità di spazio uguale alle dimensioni massime del file specificate.Specifies that space is pre-allocated on the disk equal to the specified maximum file size. Questa impostazione può essere utilizzata solo se non è selezionata la casella di controllo Senza limiti in Dimensioni massime file .This setting can only be used if the Unlimited check box under Maximum file size is not selected. Questa casella di controllo non è selezionata per impostazione predefinita.This check box is not selected by default.

  3. Facoltativamente, nella pagina Filtro , immettere un predicato o clausola WHERE per il controllo del server per specificare opzioni aggiuntive non disponibili nella pagina Generale .Optionally, on the Filter page, enter a predicate, or WHERE clause, to the server audit to specify additional options not available from the General page. Racchiudere il predicato tra le parentesi, ad esempio (object_name = 'EmployeesTable').Enclose the predicate in parentheses; for example: (object_name = 'EmployeesTable').

  4. Una volta selezionate le opzioni, fare clic su OK.When you are finished selecting options, click OK.

Per creare una specifica del controllo del serverTo create a server audit specification

  1. In Esplora oggetti fare clic sul segno più per espandere la cartella Sicurezza .In Object Explorer, click the plus sign to expand the Security folder.

  2. Fare clic con il pulsante destro del mouse sulla cartella Specifiche controllo server e selezionare Nuova specifica controllo server....Right-click the Server Audit Specifications folder and select New Server Audit Specification….

    Nella finestra di dialogo Crea specifica controllo server sono disponibili le opzioni indicate di seguito.The following options are available on the Create Server Audit Specification dialog box.

    NomeName
    Nome della specifica del controllo del server.The name of the server audit specification. Tale nome viene generato automaticamente quando si crea una nuova specifica del controllo del server, ma è modificabile.This is generated automatically when you create a new server audit specification but is editable.

    ControlloAudit
    Nome di un controllo server esistente.The name of an existing server audit. Digitare il nome del controllo o selezionarlo nell'elenco.Either type in the name of the audit or select it from the list.

    Tipo di azione di controlloAudit Action Type
    Specifica i gruppi di azioni di controllo a livello di server e le azioni di controllo da acquisire.Specifies the server-level audit action groups and audit actions to capture. Per l'elenco di gruppi di azioni di controllo a livello di server e di azioni di controllo e una descrizione degli eventi contenuti, vedere Azioni e gruppi di azioni di SQL Server Audit.For the list of server-level audit action groups and audit actions and a description of the events they contain, see SQL Server Audit Action Groups and Actions.

    Schema dell'oggettoObject Schema
    Consente di visualizzare lo schema per l'oggetto Nome oggettospecificato.Displays the schema for the specified Object Name.

    Nome oggettoObject Name
    Nome dell'oggetto da controllare.The name of the object to audit. Tale opzione è disponibile solo per le azioni di controllo e non si applica ai gruppi di controllo.This is only available for audit actions; it does not apply to audit groups.

    Puntini di sospensione (...)Ellipsis (…)
    Consente di visualizzare la finestra di dialogo Seleziona oggetti per eseguire la ricerca e la selezione di un oggetto disponibile, in base all'opzione Tipo di azione di controllo.Opens the Select Objects dialog to browse for and select an available object, based on the specified Audit Action Type.

    Nome entitàPrincipal Name
    Account per filtrare il controllo per l'oggetto da controllare.The account to filter the audit by for the object being audited.

    Puntini di sospensione (...)Ellipsis (…)
    Viene visualizzata la finestra di dialogo Seleziona oggetti per eseguire la ricerca e selezionare un oggetto disponibile, in base all'opzione Nome oggettospecificata.Opens the Select Objects dialog to browse for and select an available object, based on the specified Object Name.

  3. Al termine dell'operazione scegliere OK.When you are finished, click OK.

Utilizzo di Transact-SQL Using Transact-SQL

Per creare un controllo del serverTo create a server audit

  1. In Esplora oggetticonnettersi a un'istanza del Motore di databaseDatabase Engine.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine.

  2. Sulla barra Standard fare clic su Nuova query.On the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute.

    -- Creates a server audit called "HIPPA_Audit" with a binary file as the target and no options.  
    CREATE SERVER AUDIT HIPAA_Audit  
        TO FILE ( FILEPATH ='\\SQLPROD_1\Audit\' );  
    

Per creare una specifica del controllo del serverTo create a server audit specification

  1. In Esplora oggetticonnettersi a un'istanza del Motore di databaseDatabase Engine.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine.

  2. Sulla barra Standard fare clic su Nuova query.On the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute.

    /*Creates a server audit specification called "HIPPA_Audit_Specification" that audits failed logins for the SQL Server audit "HIPPA_Audit" created above.  
    */  
    
    CREATE SERVER AUDIT SPECIFICATION HIPPA_Audit_Specification  
    FOR SERVER AUDIT HIPPA_Audit  
        ADD (FAILED_LOGIN_GROUP);  
    GO  
    -- Enables the audit.   
    
    ALTER SERVER AUDIT HIPAA_Audit  
    WITH (STATE = ON);  
    GO  
    

    Per altre informazioni, vedere CREATE SERVER AUDIT (Transact-SQL) e CREATE SERVER AUDIT SPECIFICATION (Transact-SQL).For more information, see CREATE SERVER AUDIT (Transact-SQL) and CREATE SERVER AUDIT SPECIFICATION (Transact-SQL).