Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Istanza gestita di SQL di Azure
Elimina un oggetto controllo server usando la funzionalità SQL Server Audit. Per altre informazioni, vedere SQL Server Audit (Motore di database).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
ALTER SERVER AUDIT audit_name
{
[ TO { { FILE ( <file_options> [ , ...n ] ) } | APPLICATION_LOG | SECURITY_LOG } | URL ]
[ WITH ( <audit_options> [ , ...n ] ) ]
[ WHERE <predicate_expression> ]
}
| REMOVE WHERE
| MODIFY NAME = new_audit_name
[ ; ]
<file_options>::=
{
FILEPATH = 'os_file_path'
| MAXSIZE = { max_size { MB | GB | TB } | UNLIMITED }
| MAX_ROLLOVER_FILES = { integer | UNLIMITED }
| MAX_FILES = integer
| RESERVE_DISK_SPACE = { ON | OFF }
}
<audit_options>::=
{
QUEUE_DELAY = integer
| ON_FAILURE = { CONTINUE | SHUTDOWN | FAIL_OPERATION }
| STATE = = { ON | OFF }
}
<predicate_expression>::=
{
[ NOT ] <predicate_factor>
[ { AND | OR } [ NOT ] { <predicate_factor> } ]
[ , ...n ]
}
<predicate_factor>::=
event_field_name { = | < > | != | > | >= | < | <= } { number | 'string' }
Argomenti
TO { FILE | APPLICATION_LOG | SICUREZZA | URL }
Determina la posizione della destinazione del controllo. Le opzioni possibili sono un file binario, il registro applicazioni o il registro di sicurezza di Windows.
Importante
In Istanza gestita di SQL di Azure, SQL Audit funziona a livello di server e archivia .xel i file in Archiviazione BLOB di Azure.
FILEPATH = 'os_file_path'
Percorso dell'itinerario di controllo. Il nome del file viene generato in base al nome e al GUID del controllo.
MAXSIZE = max_size
Specifica le dimensioni massime consentite per il file di controllo. Il valore max_size deve essere un intero seguito da MB, GB, TB, o UNLIMITED. La dimensione minima che puoi specificare per max_size è 2 MB e la massima è 2.147.483.647 TB. Quando UNLIMITED viene specificato, il file cresce fino a riempirsi del disco. Specificare un valore inferiore a 2 MB aumenta l'errore MSG_MAXSIZE_TOO_SMALL . Il valore predefinito è UNLIMITED.
MAX_ROLLOVER_FILES = intero | ILLIMITATO
Viene specificato il numero massimo di file da mantenere nel file system. Quando l'impostazione di MAX_ROLLOVER_FILES = 0, non viene imposto alcun limite al numero di file di rollover creati. Il valore predefinito è 0. Il numero massimo di file specificabili è 2.147.483.647.
MAX_FILES = numero intero
Viene specificato il numero massimo di file di controllo che possono essere creati. Non passa al primo file quando si raggiunge il limite. Quando viene raggiunto il MAX_FILES limite, qualsiasi azione che causa la generazione di più eventi di controllo ha esito negativo e viene generato un errore.
RESERVE_DISK_SPACE = { ACCESO | SPENTO }
Questa opzione prealloca il file sul disco al MAXSIZE valore . Si applica solo se MAXSIZE non è uguale a UNLIMITED. Il valore predefinito è OFF.
QUEUE_DELAY = numero intero
Specifica la quantità di tempo in millisecondi che può trascorrere prima che venga forzata l'esecuzione delle azioni di controllo. Il valore 0 indica un recapito sincrono. Il valore minimo di ritardo della query impostabile è 1000 (1 secondo), ovvero l'impostazione predefinita. Il valore massimo è 2.147.483.647 (2.147.483,647 secondi o 24 giorni, 20 ore, 31 minuti e 23,647 secondi). Se specifichi un numero non valido, ricevi l'errore MSG_INVALID_QUEUE_DELAY.
ON_FAILURE = { CONTINUA | ARRESTO | FAIL_OPERATION }
Indica se l'istanza che scrive nel target dovrebbe fallire, continuare o fermarsi se SQL Server non può scrivere nel log di audit.
CONTINUE
Le operazioni di SQL Server continuano. I record di controllo non vengono conservati. Il controllo continua nel tentativo di registrare gli eventi e riprende se la condizione di errore viene risolta. Scegliendo di continuare, è possibile consentire un'attività che non è controllata e che quindi potrebbe violare i criteri di sicurezza. Usare questa opzione quando il funzionamento del motore di database è più importante della gestione di un controllo completo.
SHUTDOWN
Forza l'arresto dell'istanza di SQL Server se, per qualsiasi motivo, SQL Server non è in grado di scrivere dati nella destinazione di controllo. L'account di accesso che esegue l'istruzione ALTER deve avere l'autorizzazione SHUTDOWN in SQL Server. Il comportamento di arresto persiste anche se l'autorizzazione SHUTDOWN viene revocata in un secondo momento dall'account di accesso che esegue l'istruzione. Se l'utente non ha questo permesso, allora la dichiarazione fallisce e l'audit non viene modificato. Utilizzare l'opzione quando un errore a livello di controllo potrebbe compromettere la sicurezza o l'integrità del sistema. Per altre informazioni, vedere SHUTDOWN.
FAIL_OPERATION
Le azioni del database non vengono completate se provocano eventi controllati. Le azioni che non causano eventi controllati possono continuare, ma nessun evento verificato può verificarsi. Il controllo continua nel tentativo di registrare gli eventi e riprende se la condizione di errore viene risolta. Usare questa opzione quando la gestione di un controllo completo è più importante dell'accesso completo al motore di database.
STATE = { ON | OFF }
Consente di abilitare o disabilitare la raccolta dei record mediante il controllo. Cambiando lo stato di un audit in corso (da ON a OFF) si crea una voce di audit che attesta che l'audit è stato interrotto, il capitale che ha interrotto l'audit e il momento in cui l'audit è stato interrotto.
MODIFICA NOME = new_audit_name
Consente di modificare il nome del controllo. Non può essere usato con altre opzioni.
predicate_expression
Viene specificata l'espressione del predicato utilizzata per determinare se un evento deve essere o meno elaborato. Le espressioni di predicato sono limitate a una lunghezza di 3.000 caratteri, che limita gli argomenti stringa.
event_field_name
Nome del campo dell'evento che identifica l'origine del predicato. I campi di controllo sono descritti in sys.fn_get_audit_file. È possibile controllare tutti i campi eccetto file_name e audit_file_offset.
number
Qualsiasi tipo numerico, incluso il decimale. Le limitazioni sono la mancanza di memoria fisica disponibile o un numero troppo grande per essere rappresentato come un numero intero a 64 bit.
'string'
Stringa ANSI o Unicode come richiesto dal paragone del predicato. Non viene eseguita alcuna conversione del tipo di stringa implicita per le funzioni del paragone del predicato. Passare il tipo sbagliato comporta un errore
Osservazioni:
Devi specificare almeno una delle TOclausole , WITH, o MODIFY NAME quando chiami ALTER AUDIT.
Per apportare modifiche a un controllo è necessario impostare lo stato del controllo sull'opzione OFF. Se ALTER AUDIT viene eseguito quando viene abilitato un audit con qualsiasi opzione diversa da STATE = OFF, ricevi un MSG_NEED_AUDIT_DISABLED messaggio di errore.
È possibile aggiungere, modificare e rimuovere specifiche del controllo senza arrestare il controllo stesso.
Non puoi modificare il GUID di un audit dopo che l'audit è stato creato.
ALTER SERVER AUDIT l'istruzione non può essere utilizzata all'interno di una transazione utente.
Autorizzazioni
Per creare, modificare o eliminare un principio di audit del server, devi avere il permesso ALTER ANY SERVER AUDIT o il permesso CONTROL SERVER.
Esempi
R. Modifica il nome di un server audit
Nell'esempio seguente il nome del controllo del server HIPAA_Audit viene modificato in HIPAA_Audit_Old.
USE master;
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit
MODIFY NAME = HIPAA_Audit_Old;
GO
ALTER SERVER AUDIT HIPAA_Audit_Old
WITH (STATE = ON);
GO
B. Modifica un target di audit del server
Nell'esempio seguente il controllo del server denominato HIPAA_Audit viene modificato in una destinazione file.
USE master;
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT HIPAA_Audit TO FILE (
FILEPATH = '\\SQLPROD_1\Audit\',
MAXSIZE = 1000 MB,
RESERVE_DISK_SPACE = OFF
)
WITH (
QUEUE_DELAY = 1000,
ON_FAILURE = CONTINUE
);
GO
ALTER SERVER AUDIT HIPAA_Audit
WITH (STATE = ON);
GO
C. Modifica una clausola WHERE di audit del server
Il seguente esempio modifica la clausola where creata nell'esempio C di CREATE SERVER AUDIT. La nuova clausola WHERE consente di filtrare l'evento definito dall'utente, se pari a 27.
ALTER SERVER AUDIT [FilterForSensitiveData]
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
WHERE user_defined_event_id = 27;
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
WITH (STATE = ON);
GO
D. Rimuovere una clausola WHERE
Il seguente esempio rimuove un'espressione WHERE predicata di clausola.
ALTER SERVER AUDIT [FilterForSensitiveData]
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
REMOVE WHERE;
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
WITH (STATE = ON);
GO
E. Rinomina un audit del server
Nell'esempio seguente il nome del controllo del server viene modificato da FilterForSensitiveData a AuditDataAccess.
ALTER SERVER AUDIT [FilterForSensitiveData]
WITH (STATE = OFF);
GO
ALTER SERVER AUDIT [FilterForSensitiveData]
MODIFY NAME = AuditDataAccess;
GO
ALTER SERVER AUDIT [AuditDataAccess]
WITH (STATE = ON);
GO
Transact-SQL riferimento
- DROP SERVER AUDIT (Transact-SQL)
- CREATE SERVER AUDIT SPECIFICATION (Transact-SQL)
- ALTER SERVER AUDIT SPECIFICATION (Transact-SQL)
- DROP SERVER AUDIT SPECIFICATION (Transact-SQL)
- CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)
- ALTER DATABASE AUDIT SPECIFICATION (Transact-SQL)
- DROP DATABASE AUDIT SPECIFICATION (Transact-SQL)
- ALTER AUTHORIZATION (Transact-SQL)
Contenuti correlati
- sys.fn_get_audit_file (Transact-SQL)
- sys.server_audits (Transact-SQL)
- sys.server_file_audits (Transact-SQL)
- sys.specifiche_di_audit_del_server (Transact-SQL)
- sys.server_audit_specification_details (Transact-SQL)
- sys.database_audit_specifications (Transact-SQL)
- sys.database_audit_specification_details (Transact-SQL)
- sys.dm_server_audit_status (Transact-SQL)
- sys.dm_audit_actions (Transact-SQL)
- Creazione di un controllo del server e di una specifica del controllo del server