Partager via


Cours d’événement Audit Broker Conversation

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

SQL Server crée un Audit Broker Conversation événement pour rapporter les messages d’audit liés à la sécurité des dialogues Service Broker.

Colonnes de données de la classe d’événement Audit Broker Conversation

Colonne de données Type Description Numéro de colonne Filtrable
ApplicationName nvarchar Nom de l'application cliente qui a créé la connexion à une instance de SQL Server. Cette colonne est remplie avec les valeurs passées par l'application plutôt que par le nom affiché du programme. 10 Oui
BigintData1 bigint Numéro de séquence du message. 52 Non
ClientProcessID int ID affecté par l'ordinateur hôte au processus dans lequel s'exécute l'application cliente. Cette colonne de données est remplie si l'ID du processus du client est fourni par le client. 9 Oui
DatabaseID int L’ID de la base de données spécifié par l’énoncé USE <database> , ou l’ID de la base de données par défaut si aucune USE <database> instruction n’a été émise pour une instance donnée. SQL Server Profiler affiche le nom de la base de données si la ServerName colonne de données est capturée dans la trace et que le serveur est disponible. Déterminez la valeur pour une base de données à l'aide de la fonction DB_ID. 3 Oui
Error int Numéro d’erreur SQL Server, si cet événement signale une erreur. 31 Non
EventClass int Type de classe d'événements capturée. Toujours 158 pour Audit Broker Conversation. 27 Non
EventSubClass int Type de sous-classe d’événements, qui fournit des informations complémentaires concernant chaque classe d’événements. Le tableau suivant répertorie les valeurs des sous-classes d'événements pour cet événement. 21 Oui
FileName nvarchar Raison de l'échec de la connexion. Si la connexion réussit, cette colonne est vide. 36 Non
GUID uniqueidentifier L’identifiant de conversation du dialogue. Cet identifiant est transmis en tant que partie intégrante du message et est partagé par les deux intervenants de la conversation. 54 Non
HostName nvarchar Nom de l'ordinateur sur lequel s'exécute le client. Cette colonne de données est remplie si le nom de l'hôte est fourni par le client. Pour déterminer le nom d’hôte, utilisez la HOST_NAME fonction. 8 Oui
IntegerData int Numéro de fragment du message. 25 Non
NTDomainName nvarchar Domaine Windows auquel appartient l'utilisateur. 7 Oui
NTUserName nvarchar Nom de l'utilisateur propriétaire de la connexion ayant généré l'événement. 6 Oui
ObjectId int ID utilisateur du service cible. 22 Non
RoleName nvarchar Rôle du descripteur de conversation. C’est soit initiator , soit target. 38 Non
ServerName nvarchar Nom de l'instance SQL Server analysée. 26 Non
Severity int Gravité de l’erreur SQL Server, si cet événement signale une erreur. 29 Non
SPID int L’identifiant de session attribué par SQL Server au processus associé au client. 12 Oui
StartTime datetime Précise l’heure à laquelle l’événement a commencé, lorsque disponible. 14 Oui
State int Indique l'emplacement dans le code source SQL Server à l'origine de l'événement. Chaque lieu qui pourrait produire cet événement a un code d’État différent. Un spécialiste de l'assistance technique Microsoft peut se servir de ce code d'état afin de déterminer où l'événement s'est produit. 30 Non
TextData ntext En cas d'erreurs, contient un message qui décrit la raison de l'échec. Une des valeurs suivantes :

Le certificat est introuvable. L'utilisateur spécifié pour la sécurité du protocole du dialogue n'a pas de certificat.

Période non valide. L'utilisateur spécifié pour la sécurité du protocole de dialogue a un certificat, mais ce dernier est arrivé à expiration.

Le certificat est trop volumineux pour une allocation de mémoire. L'utilisateur spécifié pour la sécurité du protocole de dialogue a un certificat, mais ce dernier est trop volumineux. La taille maximale que Service Broker prend en charge pour les certificats est de 32 768 octets.

Clé privée introuvable. L’utilisateur spécifié pour la sécurité du protocole de dialogue possède un certificat, mais il n’y a pas de clé privée associée à ce certificat.

La taille de la clé privée du certificat est incompatible avec le fournisseur de services de chiffrement. La clé privée du certificat a une taille de clé qui ne peut pas être traitée correctement. La taille d'une clé privée doit être un multiple de 64 octets.

La taille de la clé publique du certificat est incompatible avec le fournisseur de services de chiffrement. La clé publique du certificat a une taille de clé qui ne peut pas être traitée avec succès. La taille d'une clé publique doit être un multiple de 64 octets.

La taille de la clé privée du certificat est incompatible avec la clé d’échange de clés chiffrées. La taille de la clé spécifiée dans la clé d’échange de clés ne correspond pas à la taille de la clé privée du certificat. Cela indique généralement que le certificat sur l’ordinateur distant ne correspond pas à celui de la base de données.

La taille de la clé publique du certificat est incompatible avec la signature de l’en-tête de sécurité. L’en-tête de sécurité contient une signature qui ne peut pas être validée avec la clé publique du certificat. Cela indique généralement que le certificat sur l’ordinateur distant ne correspond pas à celui de la base de données.
1 Oui

Le tableau suivant liste les valeurs de sous-classes pour cette classe d’événement.

id Sous-classe Description
1 Aucun en-tête de sécurité Lors d’une conversation sécurisée, Service Broker a reçu un message qui ne contenait pas de clé de session. Une fois la conversation sécurisée établie, le protocole de dialogue requiert que tous les messages de la conversation comportent une clé de session.
2 Aucun certificat Service Broker n’a pas pu trouver de certificat utilisable pour l’un des participants à la conversation. Pour sécuriser une conversation, la base de données doit contenir un certificat pour l'émetteur et le destinataire de la conversation.
3 Signature incorrecte Le courtier n’a pas pu vérifier la signature du message fournie par l’expéditeur en utilisant la clé publique dans le certificat de l’expéditeur. Cela peut indiquer que le message est corrompu, qu’il a été trafiqué, que le service distant et le service local ne sont pas configurés avec le même certificat utilisateur, ou que le certificat est obsolète.
4 Échec de l'exécution en tant que cible L’utilisateur de destination n’a pas de permissions de réception sur la file d’attente de destination. Pour empêcher les utilisateurs non autorisés de recevoir des messages, Service Broker ne met pas en file d’attente les messages avec un utilisateur de destination qui ne peut pas recevoir depuis la file d’attente, que l’utilisateur initiateur ait ou non la permission d’enfile des messages.