Condividi tramite


Corso di conversazione con broker di audit

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

SQL Server crea un Audit Broker Conversation evento per segnalare i messaggi di audit relativi alla sicurezza dei dialoghi di Service Broker.

Colonne di dati di classe evento Audit Broker Conversation

Colonna di dati Tipo Descrizione Numero di colonna Filtrabile
ApplicationName nvarchar Il nome dell'applicazione client in cui è stata creata la connessione a un'istanza di SQL Server. Questa colonna viene popolata con i valori passati dall'applicazione e non con il nome visualizzato del programma. 10
BigintData1 bigint Numero di sequenza del messaggio. 52 No
ClientProcessID int ID assegnato dal computer host al processo in cui è in esecuzione l'applicazione client. Questa colonna di dati viene popolata se l'ID del processo client viene fornito dal client. 9
DatabaseID int L'ID del database specificato dall'istruzione USE <database> , oppure l'ID del database predefinito se non è stata USE <database> emessa alcuna istruzione per una data istanza. SQL Server Profiler mostra il nome del database se la ServerName colonna dati viene catturata nella traccia e il server è disponibile. Determinare il valore per un database utilizzando la funzione DB_ID. 3
Error int Numero di errore di SQL Server, se questo evento segnala un errore. 31 No
EventClass int Tipo di classe di evento acquisita. Sempre 158 per Audit Broker Conversation. 27 No
EventSubClass int Tipo di sottoclasse di evento in cui sono disponibili informazioni aggiuntive su ogni classe di evento. Nella tabella seguente sono elencati i valori di sottoclasse per questo evento. 21
FileName nvarchar Motivo dell'errore di accesso. Se l'accesso è riuscito, la colonna è vuota. 36 No
GUID uniqueidentifier L'ID della conversazione del dialogo. Questo identificatore viene trasmesso come parte del messaggio e viene condiviso da entrambi i lati della conversazione. 54 No
HostName nvarchar Nome del computer in cui è in esecuzione il client. Questa colonna di dati viene popolata se il nome host viene fornito dal client. Per determinare il nome host, usare la HOST_NAME funzione . 8
IntegerData int Numero di frammento del messaggio. 25 No
NTDomainName nvarchar Dominio di Windows a cui appartiene l'utente. 7
NTUserName nvarchar Nome dell'utente proprietario della connessione che ha generato questo evento. 6
ObjectId int ID utente del servizio di destinazione. 22 No
RoleName nvarchar Ruolo dell'handle di conversazione. Questo è o initiator oppure target. 38 No
ServerName nvarchar Nome dell'istanza di SQL Server tracciata. 26 No
Severity int Gravità dell'errore di SQL Server, se questo evento segnala un errore. 29 No
SPID int L'ID della sessione assegnato da SQL Server al processo associato al client. 12
StartTime datetime Specifica l'orario in cui l'evento è iniziato, quando disponibile. 14
State int Indica il punto del codice sorgente di SQL Server che ha generato l'evento. Ogni luogo che potrebbe produrre questo evento ha un codice statale diverso. Questo codice di stato consente al supporto tecnico Microsoft di individuare la posizione in cui è stato generato l'evento. 30 No
TextData ntext Per gli errori, contiene un messaggio che descrive il motivo corrispondente. Uno dei valori seguenti:

Certificato non trovato. L'utente specificato per la sicurezza del protocollo del dialogo non dispone di un certificato.

Certificato scaduto. L'utente specificato per la sicurezza del protocollo del dialogo dispone di un certificato scaduto.

Le dimensioni del certificato sono maggiori delle dimensioni massime consentite. L'utente specificato per la sicurezza del protocollo del dialogo dispone di un certificato con dimensioni eccessive. Le dimensioni massime del certificato supportate da Service Broker corrispondono a 32.768 byte.

Impossibile trovare la chiave privata del certificato. L'utente specificato per la sicurezza del protocollo dialogo ha un certificato, ma non c'è una chiave privata associata a quel certificato.

Le dimensioni della chiave privata del certificato non sono compatibili con il provider della crittografia. La chiave privata del certificato ha una dimensione di chiave che non può essere elaborata con successo. Tali dimensioni devono corrispondere a un multiplo di 64 byte.

Le dimensioni della chiave pubblica del certificato non sono compatibili con il provider della crittografia. La chiave pubblica del certificato ha una dimensione di chiave che non può essere elaborata con successo. Tali dimensioni devono corrispondere a un multiplo di 64 byte.

Le dimensioni della chiave privata del certificato non sono compatibili con la chiave per lo scambio delle chiavi crittografata. La dimensione della chiave specificata nella chiave di scambio non corrisponde alla dimensione della chiave privata per il certificato. Questo generalmente indica che il certificato sul computer remoto non corrisponde a quello nel database.

Le dimensioni della chiave pubblica del certificato non sono compatibili con la firma dell'intestazione di sicurezza. L'intestazione di sicurezza contiene una firma che non può essere validata con la chiave pubblica del certificato. Questo generalmente indica che il certificato sul computer remoto non corrisponde a quello nel database.
1

La tabella seguente elenca i valori delle sottoclassi per questa classe evento.

ID Sottoclasse Descrizione
1 Intestazione di sicurezza non disponibile Durante una conversazione sicura, Service Broker ha ricevuto un messaggio che non conteneva una chiave di sessione. Dopo che è stata stabilita una conversazione sicura, il protocollo del dialogo richiede che tutti i messaggi della conversazione contengano una chiave della sessione.
2 Certificato non disponibile Il Broker di Servizi non è riuscito a trovare un certificato utilizzabile per uno dei partecipanti alla conversazione. Per proteggere una conversazione, è necessario che il database contenga un certificato sia per il mittente che per il destinatario della conversazione.
3 Firma non valida Il broker non poteva verificare la firma del messaggio fornita dal mittente usando la chiave pubblica nel certificato del mittente. Questo potrebbe indicare che il messaggio è corrotto, che è stato manomesso, che il servizio remoto e quello locale non sono configurati con lo stesso certificato utente, o che il certificato è obsoleto.
4 Autorizzazioni non disponibili per l'utente di destinazione L'utente di destinazione non ha permessi di ricezione sulla coda di destinazione. Per evitare che utenti non autorizzati ricevano messaggi, Service Broker non mette in coda i messaggi con un utente di destinazione che non può ricevere dalla coda, indipendentemente dal fatto che l'utente che inizia abbia il permesso di mettere in coda i messaggi.