Поделиться через


Класс по разговору с аудиторским брокером

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

SQL Server создаёт Audit Broker Conversation событие для отчёта о сообщениях аудита, связанных с безопасностью диалога Service Broker.

Столбцы данных класса событий Audit Broker Conversation

Столбец данных Тип Описание Номер столбца Доступно для фильтрации
ApplicationName nvarchar Имя клиентского приложения, создавшего подключение к экземпляру SQL Server. Этот столбец заполняется значениями, передаваемыми приложением, а не отображаемым именем программы. 10 Да
BigintData1 bigint Последовательный номер сообщения. 52 No
ClientProcessID int Идентификатор, присвоенный компьютером сервера процессу, в котором работает клиентское приложение. Этот столбец данных заполняется в том случае, если клиент вводит идентификатор клиентского процесса. 9 Да
DatabaseID int ID базы данных, указанный в операторе USE <database> , или идентификатор базы данных по умолчанию, если для данного экземпляра оператор USE <database> не был выпущен. SQL Server Profiler отображает имя базы данных, если ServerName столбец данных захвачен в трассе и сервер доступен. Определите значение для базы данных, используя функцию DB_ID. 3 Да
Error int Номер ошибки SQL Server, если это событие сообщает об ошибке. 31 No
EventClass int Тип захваченного класса событий. Всегда 158 для Audit Broker Conversation. 27 No
EventSubClass int Тип подкласса событий, предоставляющий дополнительные сведения о каждом классе события. Приведенная ниже таблица содержит список подклассов для данного класса событий. 21 Да
FileName nvarchar Причина ошибки входа. Если вход произведен успешно, этот столбец пуст. 36 No
GUID uniqueidentifier ID разговора в диалоге. Этот идентификатор передается в составе сообщения и является общим для обоих участников диалога. 54 No
HostName nvarchar Имя компьютера, на котором выполняется клиентская программа. Заполнение этого столбца данных производится в том случае, если клиент предоставляет имя узла. Чтобы определить имя узла, используйте функцию HOST_NAME . 8 Да
IntegerData int Номер фрагмента сообщения. 25 No
NTDomainName nvarchar Домен Windows, к которому принадлежит пользователь. 7 Да
NTUserName nvarchar Имя пользователя, которому принадлежит соединение, создавшее это событие. 6 Да
ObjectId int Идентификатор пользователя целевой службы. 22 No
RoleName nvarchar Роль дескриптора диалога. Это либо initiator другое, либо target. 38 No
ServerName nvarchar Имя экземпляра SQL Server, который отслеживается в настоящий момент. 26 No
Severity int Серьезность ошибки SQL Server, если это событие сообщает об ошибке. 29 No
SPID int ID сессии, назначаемый SQL Server процессу, связанному с клиентом. 12 Да
StartTime datetime Указывает время начала события, если доступно. 14 Да
State int Указывает место в исходном коде SQL Server, которое вызвало это событие. Каждое место, которое может вызвать такое событие, имеет свой код штата. Сотрудник службы технической поддержки Microsoft может использовать этот код состояния для обнаружения участка, выполнение которого привело к событию. 30 No
TextData ntext Для ошибки содержит сообщение, описывающее ее причину. Одно из следующих значений:

Сертификат не найден. Пользователь, указанный в протоколе защиты диалога, не имеет сертификата.

Недопустимый срок действия. Пользователь, указанный в протоколе защиты диалога, имеет сертификат, но срок его действия истек.

Сертификат слишком велик для размещения в памяти. Пользователь, указанный для протокола защиты диалога, имеет сертификат, но его размер слишком велик. Максимальная длина сертификата, поддерживаемая компонентом Service Broker, составляет 32 768 байт.

Не найден закрытый ключ. Пользователь, указанный для защиты диалогового протокола, имеет сертификат, но с этим сертификатом нет привязанного приватного ключа.

Размер закрытого ключа сертификата несовместим с поставщиком службы криптографии. Приватный ключ к сертификату имеет размер ключа, который невозможно успешно обработать. Размер закрытого ключа должен быть кратен 64 байт.

Размер открытого ключа несовместим с поставщиком службы криптографии. Публичный ключ сертификата имеет размер ключа, который невозможно успешно обработать. Размер открытого ключа должен быть кратен 64 байт.

Размер закрытого ключа несовместим с зашифрованным ключом обмена ключами. Размер ключа, указанный в ключе обмена ключами, не совпадает с размером приватного ключа для сертификата. Обычно это означает, что сертификат на удалённом компьютере не совпадает с сертификатом в базе данных.

Размер открытого ключа сертификата несовместим с подписью заголовка безопасности. Заголовок безопасности содержит подпись, которую нельзя проверить с помощью публичного ключа сертификата. Обычно это означает, что сертификат на удалённом компьютере не совпадает с сертификатом в базе данных.
1 Да

В следующей таблице приведены значения подклассов для этого класса событий.

ID Подкласс Описание
1 Отсутствует заголовок безопасности Во время защищённого разговора Service Broker получил сообщение без ключа сессии. Протокол требует, чтобы после установления защищенного диалога каждое сообщение содержало ключ сеанса.
2 Отсутствует сертификат Service Broker не смог найти подходящий сертификат для одного из участников разговора. Для защиты диалога база данных должна содержать сертификаты как отправителя, так и получателя.
3 Неверная цифровая подпись Брокер не смог проверить подпись сообщения, предоставленную отправителем, используя публичный ключ в сертификате отправителя. Это может указывать на повреждение сообщения, что сообщение было изменено, что удалённый и локальный сервисы не настроены с одним и тем же пользовательским сертификатом или что сертификат устарел.
4 Ошибка выполнения на целевом сервере Получатель не имеет разрешений на получение в очереди получателя. Чтобы предотвратить получение сообщений неавторизованными пользователями, Service Broker не ставит сообщения в очередь у получателя, который не может получить сообщения из очереди, независимо от того, имеет ли у инициирующего пользователя разрешение на размещение сообщений.