Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения:SQL Server
Функция аудита SQL Server позволяет выполнять аудит групп событий и событий уровня сервера на уровне сервера. Дополнительные сведения см. в статье Аудит SQL Server (ядро СУБД). SQL Server.
Аудит содержит ноль или более элементов действия аудита, записываемых в цельаудита. Цель аудита может быть двоичным файлом, журналом событий приложений Windows или журналом событий безопасности Windows. Записи, переданные в цель, могут содержать элементы, описанные в приведенной ниже таблице.
| Имя столбца | Описание | Тип | Доступные всегда |
|---|---|---|---|
| event_time | Дата и время запуска проверяемого действия. | datetime2 | Да |
| sequence_number | Отслеживает последовательность записей в одной записи аудита, слишком большой, чтобы уместиться в буфере записи для аудитов. | int | Да |
| action_id | Идентификатор действия. Совет. Для использования значения action_id в качестве предиката его следует преобразовать из строки символов в числовое значение. Дополнительные сведения см. в статье Фильтрация подсистемы аудита SQL Server по предикату action_id / class_type. |
varchar(4) | Да |
| succeeded | Указывает, успешно ли выполнено действие, активировающее событие. Для всех событий, отличных от событий входа, это сообщает только о том, выполнена ли проверка разрешений успешно или не выполнена, а не операция. - 1 = успех - 0 = сбой |
bit | Да |
| permission_bitmask | В некоторых действиях это разрешения, которые были предоставлены, отклонены или отменены. | varbinary(16) | No |
| is_column_permission | Флаг, указывающий, является ли это разрешением уровня столбца. Возвращает значение 0, когда permission_bitmask = 0. - 1 = Истина - 0 = Ложь |
bit | No |
| session_id | Идентификатор сеанса, в котором произошло событие. | smallint | Да |
| server_principal_id | Идентификатор контекста имени входа, в котором выполнено действие. | int | Да |
| database_principal_id | Идентификатор контекста пользователя базы данных, в котором выполнено действие. Возвращает значение 0, если это не применяется. Например, операция сервера. | int | No |
| target_server_principal_id | Субъект-сервер, на который выполняется операция GRANT/DENY/REVOKE. Возвращает значение 0, если применимо. | int | Да |
| target_database_principal_id | Субъект базы данных выполняет операцию GRANT/DENY/REVOKE. Возвращает значение 0, если применимо. | int | No |
| object_id | Идентификатор сущности, в которой произошел аудит. К ним относятся: объекты серверов; базы данных Объекты базы данных объекты схемы; Возвращает значение 0, если сущность является самой сервером или если аудит не выполняется на уровне объекта. Например, проверка подлинности. |
int | No |
| class_type | Тип проверяемой сущности, в которую выполняется аудит. | varchar(2) | Да |
| session_server_principal_name | Участник сервера для данного сеанса. | sysname | Да |
| server_principal_name | Текущее имя входа. | sysname | Да |
| server_principal_sid | Идентификатор безопасности текущего имени входа. | varbinary(85) | Да |
| database_principal_name | Текущий пользователь. | sysname | No |
| target_server_principal_name | Целевое имя входа действия. Возвращает значение NULL, если применимо. | sysname | No |
| target_server_principal_sid | Идентификатор безопасности целевого имени входа. Возвращает значение NULL, если применимо. | varbinary(85) | No |
| target_database_principal_name | Целевой пользователь действия. Возвращает значение NULL, если применимо. | sysname | No |
| server_instance_name | Имя экземпляра сервера, где проводился аудит. Используется стандартный формат сервера\экземпляра. | sysname | Да |
| database_name | Контекст базы данных, в котором выполнялось действие. Допускает значение NULL. Возвращает значение NULL для аудита, происходящих на уровне сервера. | sysname | No |
| schema_name | Контекст схемы, в котором выполнялось действие. | sysname | No |
| object_name | Имя сущности, для которой проводился аудит. К ним относятся: объекты серверов; базы данных Объекты базы данных объекты схемы; Допускает значение NULL. Возвращает значение NULL, если сущность является сервером или если аудит не выполняется на уровне объекта. Например, проверка подлинности. |
sysname | No |
| инструкция | Инструкция TSQL, если она существует. Возвращает значение NULL, если применимо. | nvarchar(4000) | No |
| additional_information | Уникальные сведения, которые применяются только к одному событию, возвращаются в формате XML. Некоторые действия, доступные для аудита, содержат такие сведения. Один уровень стека TSQL будет отображаться в формате XML для действий с стеком TSQL, связанным с ними. Формат XML будет следующим: <tsql_stack><frame nest_level = '%u' database_name = '%.*s' schema_name = '%.*s' object_name = '%.*s' /></tsql_stack>Nest_level кадра указывает текущий уровень вложения кадра. Имя модуля представлено в трех частях (database_name, schema_name и object_name). Имя модуля будет проанализировано, чтобы избежать недопустимых xml-символов, таких как '\<', '>', '/'. '_x' Они будут сбежали как _xHHHH\_. HHH обозначает шестнадцатеричный шестнадцатеричный код UCS-2 для символа.Допускает значение NULL. Возвращает значение NULL, если в событии нет дополнительных сведений. |
nvarchar(4000) | No |
| file_name | Путь и имя файла журнала аудита, из который была получена запись. | varchar(260) | Да |
| audit_file_offset |
Область применения: только SQL Server Смещение буфера в файле, содержащее запись аудита. |
bigint | No |
| user_defined_event_id |
Область применения: SQL Server 2012 (11.x) и более поздних версий, База данных SQL Azure и Управляемый экземпляр SQL Определяемый пользователем идентификатор события, переданный в качестве аргумента sp_audit_writeNULL для системных событий (по умолчанию) и ненулевого значения для определяемого пользователем события. Дополнительные сведения см. в разделе sp_audit_write (Transact-SQL). |
smallint | No |
| user_defined_information |
Область применения: SQL Server 2012 (11.x) и более поздних версий, База данных SQL Azure и Управляемый экземпляр SQL Используется для записи дополнительных сведений, которые пользователь хочет записать в журнал аудита с помощью хранимой sp_audit_write процедуры. |
nvarchar(4000) | No |
| audit_schema_version | Всегда 1 | int | Да |
| sequence_group_id |
Область применения: только SQL Server Уникальный идентификатор |
varbinary(85) | No |
| transaction_id |
Применимо только к SQL Server (начиная с 2016 г.) Уникальный идентификатор для идентификации нескольких событий аудита в одной транзакции |
bigint | No |
| client_ip |
Область применения: База данных SQL Azure и SQL Server (начиная с 2017 г.) Исходный IP-адрес клиентского приложения |
nvarchar(128) | No |
| application_name |
Область применения: База данных SQL Azure и SQL Server (начиная с 2017 г.) Имя клиентского приложения, выполнившего инструкцию, вызвавшей событие аудита. |
nvarchar(128) | No |
| duration_milliseconds |
Область применения: База данных SQL Azure и Управляемый экземпляр SQL Длительность выполнения запроса в миллисекундах |
bigint | No |
| response_rows |
Область применения: База данных SQL Azure и Управляемый экземпляр SQL Число строк, возвращаемых в результирующем наборе. |
bigint | No |
| affected_rows |
Область применения: только база данных SQL Azure Количество строк, затронутых инструкцией. |
bigint | No |
| connection_id |
Область применения: База данных SQL Azure и Управляемый экземпляр SQL Идентификатор подключения на сервере |
GUID | No |
| data_sensitivity_information |
Область применения: только база данных SQL Azure Типы сведений и метки конфиденциальности, возвращаемые аудитом запроса на основе классифицированных столбцов в базе данных. Дополнительные сведения об обнаружении и классификации данных базы данных SQL Azure |
nvarchar(4000) | No |
| host_name | Имя узла подключения клиента | nvarchar(128) | No |
| session_context | Сведения о контексте сеанса для подключения | nvarchar(4000) | No |
| client_tls_version |
Область применения: SQL Server 2022 и более поздних версий Номер версии TLS, используемый подключением клиента |
int | No |
| client_tls_version_name |
Область применения: SQL Server 2022 и более поздних версий Имя версии TLS, используемое клиентским подключением |
nvarchar(128) | No |
| database_transaction_id | Идентификатор транзакции базы данных | bigint | No |
| ledger_start_sequence_number |
Область применения: SQL Server 2022 и более поздних версий Номер начальной последовательности реестра для операций реестра |
bigint | No |
| external_policy_permissions_checked | Разрешения внешней политики, которые были проверены во время операции | nvarchar(4000) | No |
Примечания
Некоторые действия не заполняют значение столбца, так как это может быть неприменимо для действия.
Аудит SQL Server хранит 4000 символов данных для полей символов в записи аудита. Если значения additional_information и инструкций , возвращаемые из действия аудита, возвращают более 4000 символов, столбец sequence_number используется для записи нескольких записей в отчет аудита для одного действия аудита для записи этих данных. Применяется следующая обработка.
Столбец инструкции делится на 4000 символов.
Аудит SQL Server записывается в качестве первой строки для записи аудита с частичными данными. Все другие поля повторяются в каждой строке.
Значение sequence_number увеличивается.
Этот процесс повторяется до тех пор, пока не будут записаны все данные.
Данные можно подключить, считывая строки последовательно с помощью значения sequence_number, а также столбцов event_Time, action_id и session_id столбцов для идентификации действия.
Связанный контент
- СОЗДАНИЕ АУДИТА СЕРВЕРА (Transact-SQL)
- ИЗМЕНИТЬ АУДИТ СЕРВЕРА (Transact-SQL)
- Удаление серверного аудита (Transact-SQL)
- СОЗДАТЬ СПЕЦИФИКАЦИЮ АУДИТА СЕРВЕРА (Transact-SQL)
- СПЕЦИФИКАЦИЯ ALTER SERVER AUDIT (Transact-SQL)
- СПЕЦИФИКАЦИЯ АУДИТА DROP SERVER (Transact-SQL)
- Создать спецификацию аудита базы данных (Transact-SQL)
- Изменение спецификации аудита базы данных (ALTER DATABASE AUDIT SPECIFICATION) в Transact-SQL
- СПЕЦИФИКАЦИЯ АУДИТА БАЗЫ ДАННЫХ DROP (Transact-SQL)
- Изменение Авторизации (Transact-SQL)
- sys.fn_get_audit_file (Transact-SQL)
- sys.server_audits (Transact-SQL)
- sys.server_file_audits (Transact-SQL)
- спецификации аудита сервера (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)
- sys.dm_audit_class_type_map (Transact-SQL)