Подсистема аудита SQL Server (Database Engine)SQL Server Audit (Database Engine)

ОБЛАСТЬ ПРИМЕНЕНИЯ ЭТОЙ СТАТЬИ: даSQL ServerдаБаза данных SQL Azure (только управляемый экземпляр)нетХранилище данных SQL AzureнетParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL Database (Managed Instance only)noAzure SQL Data Warehouse noParallel Data Warehouse

Аудит экземпляра среды Компонент SQL Server Database EngineSQL Server Database Engine или отдельной базы данных включает в себя отслеживание и протоколирование событий, происходящих в компоненте Компонент Database EngineDatabase Engine.Auditing an instance of the Компонент SQL Server Database EngineSQL Server Database Engine or an individual database involves tracking and logging events that occur on the Компонент Database EngineDatabase Engine. Аудит среды SQL ServerSQL Server позволяет проводить аудит сервера, который может включать в себя спецификации аудита сервера для событий на уровне сервера, а также спецификации аудита базы данных для событий на уровне базы данных. SQL ServerSQL Server audit lets you create server audits, which can contain server audit specifications for server level events, and database audit specifications for database level events. События аудита могут записываться в журналы событий или файлы аудита.Audited events can be written to the event logs or to audit files.

Важно!

В управляемом экземпляре базы данных SQL Azure эта функция T-SQL имеет определенные изменения в поведении.On Azure SQL Database Managed Instance, this T-SQL feature has certain behavior changes. Подробные сведения обо всех изменениях поведения T-SQL см. в статье Различия T-SQL между управляемым экземпляром базы данных SQL Azure и SQL Server.See Azure SQL Database Managed Instance T-SQL differences from SQL Server for details for all T-SQL behavior changes.

В SQL ServerSQL Serverдоступно несколько уровней аудита, применение которых зависит от существующих требований или стандартов установки.There are several levels of auditing for SQL ServerSQL Server, depending on government or standards requirements for your installation. Подсистема аудита SQL ServerSQL Server предоставляет средства и процессы, необходимые для включения, хранения и просмотра аудитов на различных объектах серверов и баз данных. SQL ServerSQL Server Audit provides the tools and processes you must have to enable, store, and view audits on various server and database objects.

Группы действий аудита сервера можно записывать для всего экземпляра, а также группы действий аудита базы данных либо действия аудита базы данных для каждой базы данных.You can record server audit action groups per-instance, and either database audit action groups or database audit actions per database. Событие аудита будет происходить каждый раз при обнаружении действия, подлежащего аудиту.The audit event will occur every time that the auditable action is encountered.

Аудит на уровне сервера поддерживается во всех выпусках SQL ServerSQL Server .All editions of SQL ServerSQL Server support server level audits. Все выпуски поддерживают аудит на уровне базы данных, начиная с SQL Server 2016 (13.x)SQL Server 2016 (13.x) с пакетом обновления 1 (SP1).All editions support database level audits beginning with SQL Server 2016 (13.x)SQL Server 2016 (13.x) SP1. Раньше аудит на уровне базы банных был доступен только в выпусках Enterprise Edition, Developer Edition и Evaluation Edition.Prior to that, database level auditing was limited to Enterprise, Developer, and Evaluation editions. Дополнительные сведения см. в разделе Функции, поддерживаемые различными выпусками SQL Server 2016.For more information, see Features Supported by the Editions of SQL Server 2016.

Примечание

Этот раздел относится к SQL ServerSQL Server.This topic applies to SQL ServerSQL Server. Дополнительные сведения для База данных SQLSQL Databaseсм. в статье Приступая к работе с аудитом базы данных SQL.For База данных SQLSQL Database, see Get started with SQL database auditing.

Компоненты подсистемы аудита SQL ServerSQL Server Audit Components

Аудит — это сочетание в едином пакете нескольких элементов для определенной группы действий сервера или базы данных.An audit is the combination of several elements into a single package for a specific group of server actions or database actions. Компоненты подсистемы аудита SQL ServerSQL Server совместно формируют выходные данные, называемые аудитом, аналогично тому, как определение отчета в сочетании с элементами графики и данных формирует отчет.The components of SQL ServerSQL Server audit combine to produce an output that is called an audit, just as a report definition combined with graphics and data elements produces a report.

Подсистема аудита SQL ServerSQL Server использует расширенные события для создания аудита. SQL ServerSQL Server audit uses Extended Events to help create an audit. Дополнительные сведения о расширенных событиях см. в разделе Расширенные события.For more information about Extended Events, see Extended Events.

подсистема аудита SQL ServerSQL Server Audit

Объект Подсистема аудита SQL Server объединяет отдельные экземпляры действий или групп действий уровня сервера или базы данных, за которыми нужно проводить наблюдение.The SQL Server Audit object collects a single instance of server or database-level actions and groups of actions to monitor. Аудит работает на уровне экземпляра SQL ServerSQL Server .The audit is at the SQL ServerSQL Server instance level. На одном экземпляре SQL ServerSQL Server может существовать несколько аудитов.You can have multiple audits per SQL ServerSQL Server instance.

При определении аудита задается место для вывода результатов.When you define an audit, you specify the location for the output of the results. Оно называется назначением аудита.This is the audit destination. Аудит создается в отключенном состоянии и не выполняет автоматический аудит никаких действий.The audit is created in a disabled state, and does not automatically audit any actions. После включения аудита назначение аудита начинает получать от него данные.After the audit is enabled, the audit destination receives data from the audit.

Спецификация аудита сервераServer Audit Specification

Объект Спецификация аудита сервера принадлежит аудиту.The Server Audit Specification object belongs to an audit. Для каждого аудита вы можете создать один объект спецификации аудита сервера, поскольку они оба создаются в области экземпляра SQL ServerSQL Server .You can create one server audit specification per audit, because both are created at the SQL ServerSQL Server instance scope.

Спецификация аудита сервера собирает множество групп действий уровня сервера, вызываемых компонентом расширенных событий.The server audit specification collects many server-level action groups raised by the Extended Events feature. В спецификацию аудита сервера можно включить группы действий аудита .You can include audit action groups in a server audit specification. Группы действий аудита — это стандартные группы действий, являющиеся атомарными событиями, происходящими в компоненте Компонент Database EngineDatabase Engine.Audit action groups are predefined groups of actions, which are atomic events occurring in the Компонент Database EngineDatabase Engine. Эти действия передаются аудиту, который регистрирует их в целевом объекте.These actions are sent to the audit, which records them in the target.

Группы действий аудита уровня базы данных описываются в разделе Действия и группы действий подсистемы аудита SQL Server.Server-level audit action groups are described in the topic SQL Server Audit Action Groups and Actions.

Спецификация аудита базы данныхDatabase Audit Specification

Объект Спецификация аудита базы данных также принадлежит подсистеме аудита SQL ServerSQL Server .The Database Audit Specification object also belongs to a SQL ServerSQL Server audit. Для каждого аудита каждой базы данных SQL ServerSQL Server можно создать одну спецификацию аудита базы данных.You can create one database audit specification per SQL ServerSQL Server database per audit.

Спецификация аудита базы данных включает действия аудита уровня базы данных, вызываемые компонентом расширенных событий.The database audit specification collects database-level audit actions raised by the Extended Events feature. В спецификацию аудита базы данных можно добавлять либо группы действий аудита, либо события аудита.You can add either audit action groups or audit events to a database audit specification. События аудита — это атомарные события, аудит которых может производиться ядром SQL ServerSQL Server .Audit events are the atomic actions that can be audited by the SQL ServerSQL Server engine. Группы действий аудита — это стандартные группы действий.Audit action groups are predefined groups of actions. Они расположены в области базы данных SQL ServerSQL Server .Both are at the SQL ServerSQL Server database scope. Эти действия передаются аудиту, который регистрирует их в целевом объекте.These actions are sent to the audit, which records them in the target. Не включайте объекты области сервера, такие как системные представления, в пользовательскую спецификацию аудита базы данных.Do not include server-scoped objects, such as the system views, in a user database audit specification.

Группы действий подсистемы аудита уровня базы данных и действия подсистемы аудита описываются в разделе Действия и группы действий подсистемы аудита SQL Server.Database-level audit action groups and audit actions are described in the topic SQL Server Audit Action Groups and Actions.

НазначениеTarget

Результаты аудита отправляются цели, которая может быть файлом, журналом событий безопасности Windows или журналом событий приложений Windows.The results of an audit are sent to a target, which can be a file, the Windows Security event log, or the Windows Application event log. Журналы необходимо периодически просматривать и архивировать, чтобы у цели оставалось достаточно места для создания дополнительных записей.Logs must be reviewed and archived periodically to make sure that the target has sufficient space to write additional records.

Важно!

Любой прошедший проверку пользователь может осуществлять чтение и запись в журнале событий приложений.Any authenticated user can read and write to the Windows Application event log. Для работы с журналом событий приложений необходимо меньше разрешений, чем для работы с журналом событий безопасности Windows; журнал событий приложений менее защищен, чем журнал событий безопасности Windows.The Application event log requires lower permissions than the Windows Security event log and is less secure than the Windows Security event log.

Для записи в журнал событий безопасности Windows необходимо добавить в политику SQL ServerSQL Server Создание аудитов безопасности учетную запись службы .Writing to the Windows Security log requires the SQL ServerSQL Server service account to be added to the Generate security audits policy. По умолчанию в эту политику входят учетные записи «Локальная система», «Локальная служба» и «Сетевая служба».By default, the Local System, Local Service, and Network Service are part of this policy. Этот параметр можно настроить с помощью оснастки политики безопасности (secpol.msc).This setting can be configured by using the security policy snap-in (secpol.msc). Кроме того, политика безопасности Аудит доступа к объектам должна быть включена для регистрации как успешных , так и неуспешныхдействий.Additionally, the Audit object access security policy must be enabled for both Success and Failure. Этот параметр можно настроить с помощью оснастки политики безопасности (secpol.msc).This setting can be configured by using the security policy snap-in (secpol.msc). В ОС Windows VistaWindows Vista и Windows Server 2008 можно проводить более детальную настройку создаваемых приложением политик из командной строки с помощью программы политики аудита (AuditPol.exe).In Windows VistaWindows Vista or Windows Server 2008, you can set the more granular application generated policy from the command line by using the audit policy program (AuditPol.exe). Дополнительные сведения по включению функции записи в журнал безопасности Windows см. в разделе Запись событий подсистемы аудита SQL Server в журнал безопасности.For more information about the steps to enable writing to the Windows Security log, see Write SQL Server Audit Events to the Security Log. Дополнительные сведения о программе Auditpol.exe см. в статье базы знаний 921469 Использование групповой политики для детальной настройки аудита безопасности.For more information about the Auditpol.exe program, see Knowledge Base article 921469, How to use Group Policy to configure detailed security auditing. Журналы событий Windows являются глобальными для операционной системы Windows.The Windows event logs are global to the Windows operating system. Дополнительные сведения о журналах событий Windows см. в разделе Общие сведения о средстве просмотра событий.For more information about the Windows event logs, see Event Viewer Overview. Если для аудита необходимы более точные разрешения, используйте назначение «двоичный файл».If you need more precise permissions on the audit, use the binary file target.

Если данные аудита сохраняются в файл, то для предотвращения подмены можно ограничить доступ к файлу следующим образом.When you are saving audit information to a file, to help prevent tampering, you can restrict access to the file location in the following ways:

  • Учетная запись службы SQL ServerSQL Server должна обладать разрешением на чтение и запись.The SQL ServerSQL Server Service Account must have both Read and Write permission.

  • Администраторам аудита обычно требуется разрешение на чтение и запись.Audit Administrators typically require Read and Write permission. Здесь подразумевается, что администраторы аудита — это учетные записи Windows, предназначенные для администрирования файлов аудита, в том числе копирования их в другие общие папки, резервного копирования и других операций.This assumes that the Audit Administrators are Windows accounts for administration of audit files, such as: copying them to different shares, backing them up, and so on.

  • Агенты чтения аудита должны иметь разрешение только для чтения файлов аудита.Audit Readers that are authorized to read audit files must have Read permission.

    Даже если запись в файл выполняется компонентом Компонент Database EngineDatabase Engine , другие пользователи Windows могут прочитать файл аудита, если имеют нужное разрешение.Even when the Компонент Database EngineDatabase Engine is writing to a file, other Windows users can read the audit file if they have permission. Компонент Компонент Database EngineDatabase Engine не получает монопольную блокировку, запрещающую операции чтения.The Компонент Database EngineDatabase Engine does not take an exclusive lock that prevents read operations.

    Поскольку компонент Компонент Database EngineDatabase Engine может получать доступ к файлу, то имена входа SQL ServerSQL Server , имеющие разрешение CONTROL SERVER, могут использовать компонент Компонент Database EngineDatabase Engine для доступа к файлам аудита.Because the Компонент Database EngineDatabase Engine can access the file, SQL ServerSQL Server logins that have CONTROL SERVER permission can use the Компонент Database EngineDatabase Engine to access the audit files. Чтобы зарегистрировать пользователей, читающих файлы аудита, определите аудит в функции master.sys.fn_get_audit_file.To record any user that is reading the audit file, define an audit on master.sys.fn_get_audit_file. В результате будут записаны имена входа с разрешением CONTROL SERVER, которые получали доступ к файлу аудита через SQL ServerSQL Server.This records the logins with CONTROL SERVER permission that have accessed the audit file through SQL ServerSQL Server.

    Если администратор аудита скопирует файл в другое место (в целях архивирования или по другой причине), то список управления доступом к новому месту следует сократить до следующего набора разрешений:If an Audit Administrator copies the file to a different location (for archive purposes, and so on), the ACLs on the new location should be reduced to the following permissions:

  • администратор аудита — чтение и запись;Audit Administrator – Read / Write

  • агент чтения аудита — только чтение.Audit Reader – Read

    Рекомендуется создавать отчеты аудита в отдельном экземпляре SQL ServerSQL Server, например в экземпляре SQL Server ExpressSQL Server Express, к которому будут иметь доступ только администраторы аудита и агенты чтения аудита.We recommend that you generate audit reports from a separate instance of SQL ServerSQL Server, such as an instance of SQL Server ExpressSQL Server Express, to which only Audit Administrators or Audit Readers have access. Использование отдельного экземпляра компонента Компонент Database EngineDatabase Engine для составления отчетов помогает предотвратить несанкционированный доступ пользователей к записям аудита.By using a separate instance of the Компонент Database EngineDatabase Engine for reporting, you can help prevent unauthorized users from obtaining access to the audit record.

    Можно обеспечить дополнительную защиту от несанкционированного доступа путем шифрования папки, в которой хранится файл аудита, с применением шифрования диска Windows BitLocker или шифрованной файловой системы Windows (EFS).You can offer additional protection against unauthorized access by encrypting the folder in which the audit file is stored by using Windows BitLocker Drive Encryption or Windows Encrypting File System.

    Дополнительные сведения о записях аудита, записываемых в целевое назначение, см. в разделе Записи подсистемы аудита SQL Server.For more information about the audit records that are written to the target, see SQL Server Audit Records.

Общие сведения об использовании подсистемы аудита SQL ServerOverview of Using SQL Server Audit

Для определения аудита можно использовать среду Среда SQL Server Management StudioSQL Server Management Studio или Transact-SQLTransact-SQL .You can use Среда SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL to define an audit. После создания и включения аудита он начнет вести записи в целевое назначение.After the audit is created and enabled, the target will receive entries.

Просматривать журналы событий Windows можно с помощью программы Средство просмотра событий в Windows.You can read the Windows event logs by using the Event Viewer utility in Windows. Для чтения целевых файлов можно использовать Средство просмотра журнала в Среда SQL Server Management StudioSQL Server Management Studio или функцию fn_read_audit_file .For file targets, you can use either the Log File Viewer in Среда SQL Server Management StudioSQL Server Management Studio or the fn_get_audit_file function to read the target file.

Обычно процесс создания и использования аудита происходит следующим образом.The general process for creating and using an audit is as follows.

  1. Создайте аудит и определите цель.Create an audit and define the target.

  2. Создается либо спецификация аудита сервера, либо спецификация аудита базы данных, которая сопоставляет аудит.Create either a server audit specification or database audit specification that maps to the audit. Включается спецификация аудита.Enable the audit specification.

  3. Включите аудит.Enable the audit.

  4. Производится считывание событий аудита с помощью Просмотр событийWindows, Средства просмотра журналаили функции fn_get_audit_file.Read the audit events by using the Windows Event Viewer, Log File Viewer, or the fn_get_audit_file function.

    Дополнительные сведения об аудите см. в разделах Создание аудита сервера и спецификации аудита сервера и Создание спецификации аудита для сервера и базы данных.For more information, see Create a Server Audit and Server Audit Specification and Create a Server Audit and Database Audit Specification.

ЗамечанияConsiderations

В случае ошибки при инициализации аудита сервер не будет запущен.In the case of a failure during audit initiation, the server will not start. В этом случае его можно запустить, если в командную строку включить параметр -f .In this case, the server can be started by using the –f option at the command line.

Если ошибка аудита вызывает отключение сервера или не дает ему запуститься, поскольку для аудита был задан режим ON_FAILURE=SHUTDOWN, то в журнал будет записано событие MSG_AUDIT_FORCED_SHUTDOWN.When an audit failure causes the server to shut down or not to start because ON_FAILURE=SHUTDOWN is specified for the audit, the MSG_AUDIT_FORCED_SHUTDOWN event will be written to the log. Поскольку выключение происходит при первом возникновении этого события, это событие будет записано один раз.Because the shutdown will occur on the first encounter of this setting, the event will be written one time. Это событие записывается после получения сообщения об ошибке, означающего, что аудит вызвал отключение.This event is written after the failure message for the audit causing the shutdown. Администратор может обойти завершения работы, вызываемые аудитом, запустив SQL ServerSQL Server в однопользовательском режиме с использованием флага –m .An administrator can bypass audit-induced shutdowns by starting SQL ServerSQL Server in Single User mode using the –m flag. При запуске в однопользовательском режиме будет произведено изменение настроек любого аудита, запускающегося в этом сеансе, для которого было задано условие ON_FAILURE=SHUTDOWN. Такие аудиты будут запускаться с условием ON_FAILURE=CONTINUE.If you start in Single User mode, you will downgrade any audit where ON_FAILURE=SHUTDOWN is specified to run in that session as ON_FAILURE=CONTINUE. Если SQL ServerSQL Server запускается с использованием флага –m , то в журнал ошибок будет записано сообщение MSG_AUDIT_SHUTDOWN_BYPASSED.When SQL ServerSQL Server is started by using the –m flag, the MSG_AUDIT_SHUTDOWN_BYPASSED message will be written to the error log.

Дополнительные сведения о параметрах запуска службы см. в разделе Параметры запуска службы Database Engine.For more information about service startup options, see Database Engine Service Startup Options.

Присоединение базы данных с определенным аудитомAttaching a Database with an Audit Defined

При присоединении базы данных, имеющей спецификацию аудита с идентификатором GUID, который не существует на сервере, такая спецификация аудита получит состояние потерянная .Attaching a database that has an audit specification and specifies a GUID that does not exist on the server will cause an orphaned audit specification. Поскольку в экземпляре сервера не существует аудита с совпадающим идентификатором GUID, события аудита записываться не будут.Because an audit with a matching GUID does not exist on the server instance, no audit events will be recorded. Исправить эту ситуацию можно, используя команду ALTER DATABASE AUDIT SPECIFICATION для присоединения потерянной спецификации аудита к существующему аудиту сервера.To correct this situation, use the ALTER DATABASE AUDIT SPECIFICATION command to connect the orphaned audit specification to an existing server audit. Также можно использовать команду CREATE SERVER AUDIT для создания на сервере нового аудита с указанным идентификатором GUID.Or, use the CREATE SERVER AUDIT command to create a new server audit with the specified GUID.

Базу данных, для которой была задана спецификация аудита, можно присоединить к другому выпуску SQL ServerSQL Server , не поддерживающему подсистему аудита SQL ServerSQL Server , например SQL Server ExpressSQL Server Express , но запись событий аудита производиться не будет.You can attach a database that has an audit specification defined on it to another edition of SQL ServerSQL Server that does not support SQL ServerSQL Server audit, such as SQL Server ExpressSQL Server Express but it will not record audit events.

Зеркальное отображение баз данных и подсистема аудита SQL ServerDatabase Mirroring and SQL Server Audit

Если для базы данных определена спецификация аудита базы данных и используется зеркальное отображение базы данных, то в нее будет включена спецификация аудита базы данных.A database that has a database audit specification defined and that uses database mirroring will include the database audit specification. Для правильной работы на зеркальном экземпляре SQL необходимо выполнить настройку следующих элементов.To work correctly on the mirrored SQL instance, the following items must be configured:

  • Чтобы спецификация аудита базы данных могла создавать записи аудита, на зеркальном сервере должен присутствовать аудит с тем же идентификатором GUID.The mirror server must have an audit with the same GUID to enable the database audit specification to write audit records. Это можно настроить с помощью команды CREATE AUDIT WITH GUID=<GUID из аудита исходного сервера>.This can be configured by using the command CREATE AUDIT WITH GUID=<GUID from source Server Audit>.

  • При использовании в качестве цели двоичного файла учетная запись службы зеркального сервера должна обладать необходимыми разрешениями на место назначения, куда производится запись аудиторского следа.For binary file targets, the mirror server service account must have appropriate permissions to the location where the audit trail is being written.

  • При использовании в качестве целей журналов событий Windows политика безопасности на компьютере, на котором расположен зеркальный сервер, должна разрешать учетной записи службы доступ к журналу событий безопасности или приложений.For Windows event log targets, the security policy on the computer where the mirror server is located must allow for service account access to the security or application event log.

Администраторы аудитаAuditing Administrators

Члены предопределенной роли сервера sysadmin определены как пользователь dbo в каждой базе данных.Members of the sysadmin fixed server role are identified as the dbo user in each database. Действия аудита администраторов выполняются как действия аудита пользователя dbo .To audit actions of the administrators, audit the actions of the dbo user.

Создание аудита и работа с ним на Transact-SQLCreating and Managing Audits with Transact-SQL

Для реализации всех аспектов аудита среды SQL ServerSQL Server можно использовать инструкции DDL, представления каталогов и динамические административные представления и функции.You can use DDL statements, dynamic management views and functions, and catalog views to implement all aspects of SQL ServerSQL Server Audit.

Инструкции языка определения данных DDLData Definition Language Statements

Чтобы создать, изменить или удалить спецификацию аудита, можно использовать следующие инструкции DDL.You can use the following DDL statements to create, alter, and drop audit specifications:

ALTER AUTHORIZATIONALTER AUTHORIZATION CREATE SERVER AUDITCREATE SERVER AUDIT
ALTER DATABASE AUDIT SPECIFICATIONALTER DATABASE AUDIT SPECIFICATION CREATE SERVER AUDIT SPECIFICATIONCREATE SERVER AUDIT SPECIFICATION
ALTER SERVER AUDITALTER SERVER AUDIT DROP DATABASE AUDIT SPECIFICATIONDROP DATABASE AUDIT SPECIFICATION
ALTER SERVER AUDIT SPECIFICATIONALTER SERVER AUDIT SPECIFICATION DROP SERVER AUDITDROP SERVER AUDIT
CREATE DATABASE AUDIT SPECIFICATIONCREATE DATABASE AUDIT SPECIFICATION DROP SERVER AUDIT SPECIFICATIONDROP SERVER AUDIT SPECIFICATION

Динамические представления и функцииDynamic Views and Functions

В следующей таблице перечисляются динамические представления и функции, которые можно использовать в подсистеме аудита SQL ServerSQL Server .The following table lists the dynamic views and function that you can use for SQL ServerSQL Server Auditing.

Динамические представления и функцииDynamic views and functions ОписаниеDescription
sys.dm_audit_actionssys.dm_audit_actions Возвращает строку для каждого действия аудита, которое может быть зарегистрировано в журнале аудита, и каждой группы действий аудита, которая может быть настроена в составе аудита SQL ServerSQL Server .Returns a row for every audit action that can be reported in the audit log and every audit action group that can be configured as part of SQL ServerSQL Server Audit.
sys.dm_server_audit_statussys.dm_server_audit_status Предоставляет сведения о текущем состоянии аудита.Provides information about the current state of the audit.
sys.dm_audit_class_type_mapsys.dm_audit_class_type_map Возвращает таблицу, которая сопоставляет поле class_type в журнале аудита с полем class_desc в представлении sys.dm_audit_actions.Returns a table that maps the class_type field in the audit log to the class_desc field in sys.dm_audit_actions.
fn_get_audit_filefn_get_audit_file Возвращает сведения из файла аудита, созданного аудитом сервера.Returns information from an audit file created by a server audit.

Представления каталогаCatalog Views

В следующей таблице перечисляются представления каталога, которые можно использовать в подсистеме аудита SQL ServerSQL Server .The following table lists the catalog views that you can use for SQL ServerSQL Server auditing.

Представления каталогаCatalog views ОписаниеDescription
sys.database_ audit_specificationssys.database_ audit_specifications Содержит сведения о спецификациях аудита базы данных в аудите SQL ServerSQL Server на экземпляре сервера.Contains information about the database audit specifications in a SQL ServerSQL Server audit on a server instance.
sys.database_audit_specification_detailssys.database_audit_specification_details Содержит сведения о спецификациях аудита базы данных в аудите SQL ServerSQL Server на экземпляре сервера для всех баз данных.Contains information about the database audit specifications in a SQL ServerSQL Server audit on a server instance for all databases.
sys.server_auditssys.server_audits Содержит по одной строке для каждого аудита SQL ServerSQL Server в экземпляре сервера.Contains one row for each SQL ServerSQL Server audit in a server instance.
sys.server_audit_specificationssys.server_audit_specifications Содержит сведения о спецификациях аудита сервера в подсистеме аудита SQL ServerSQL Server на экземпляре сервера.Contains information about the server audit specifications in a SQL ServerSQL Server audit on a server instance.
sys.server_audit_specifications_detailssys.server_audit_specifications_details Содержит сведения об элементах (действиях) спецификации аудита сервера в подсистеме аудита SQL ServerSQL Server на экземпляре сервера.Contains information about the server audit specification details (actions) in a SQL ServerSQL Server audit on a server instance.
sys.server_file_auditssys.server_file_audits Содержит расширенные сведения о типах аудита файлов в подсистеме аудита SQL ServerSQL Server на экземпляре сервера.Contains stores extended information about the file audit type in a SQL ServerSQL Server audit on a server instance.

РазрешенияPermissions

У каждой функции и команды подсистемы аудита SQL ServerSQL Server существуют индивидуальные требования к разрешениям.Each feature and command for SQL ServerSQL Server Audit has individual permission requirements.

Чтобы создать, изменить или удалить аудит сервера или спецификацию аудита сервера, участникам на уровне сервера требуется разрешение ALTER ANY SERVER AUDIT или CONTROL SERVER.To create, alter, or drop a Server Audit or Server Audit Specification, server principals require the ALTER ANY SERVER AUDIT or the CONTROL SERVER permission. Чтобы создать, изменить или удалить спецификацию аудита базы данных, участникам базы данных требуется разрешение ALTER ANY DATABASE AUDIT либо разрешение ALTER или CONTROL на эту базу данных.To create, alter, or drop a Database Audit Specification, database principals require the ALTER ANY DATABASE AUDIT permission or the ALTER or CONTROL permission on the database. Кроме того, участникам необходимо разрешение на подключение к базе данных либо разрешение ALTER ANY SERVER AUDIT или CONTROL SERVER.In addition, principals must have permission to connect to the database, or ALTER ANY SERVER AUDIT or CONTROL SERVER permissions.

Разрешение VIEW ANY DEFINITION предоставляет доступ на просмотр представлений аудита на уровне сервера, а разрешение VIEW DEFINITION — на уровне базы данных.The VIEW ANY DEFINITION permission provides access to view the server level audit views and VIEW DEFINITION provides access to view the database level audit views. В случае отказа в этих разрешениях возможность просматривать представления каталога переопределяется, даже если субъект имеет разрешения ALTER ANY SERVER AUDIT или ALTER ANY DATABASE AUDIT.Denial of these permissions, overrides the ability to view the catalog views, even if the principal has the ALTER ANY SERVER AUDIT or ALTER ANY DATABASE AUDIT permissions.

Дополнительные сведения о предоставлении прав и разрешений см. в разделе GRANT (Transact-SQL).For more information about how to grant rights and permissions, see GRANT (Transact-SQL).

Внимание!

Члены роли sysadmin могут изменять любой компонент аудита; члены роли db_owner могут изменять спецификации аудита в базе данных.Principals in the sysadmin role can tamper with any audit component and those in the db_owner role can tamper with audit specifications in a database. Подсистема аудита SQL ServerSQL Server выполнит проверку наличия у имени входа, пытающегося выполнить создание или изменение спецификации аудита (хотя бы разрешения ALTER ANY DATABASE AUDIT). SQL ServerSQL Server Audit will validate that a logon that creates or alters an audit specification has at least the ALTER ANY DATABASE AUDIT permission. Однако при присоединении базы данных проверка не производится.However, it does no validation when you attach a database. Следует считать, что спецификации аудита базы данных настолько надежны, насколько надежны участники, имеющие роли sysadmin или db_owner.You should assume all Database Audit Specifications are only as trustworthy as those principals in the sysadmin or db_owner role.

Создание аудита сервера и спецификации аудита сервераCreate a Server Audit and Server Audit Specification

Создание спецификации аудита для сервера и базы данныхCreate a Server Audit and Database Audit Specification

Просмотр журнала подсистемы аудита SQL ServerView a SQL Server Audit Log

Запись событий подсистемы аудита SQL Server в журнал безопасностиWrite SQL Server Audit Events to the Security Log

Свойства сервера (страница "Безопасность")Server Properties (Security Page)
Описывает, как включить аудит входа в систему для SQL ServerSQL Server.Explains how to turn on login auditing for SQL ServerSQL Server. Записи аудита хранятся в журнале приложений Windows.The audit records are stored in the Windows application log.

Параметр конфигурации сервера "c2 audit mode"c2 audit mode Server Configuration Option
Описывается режим аудита в SQL ServerSQL Server, соответствующий стандарту безопасности С2.Explains the C2 security compliance auditing mode in SQL ServerSQL Server.

Категория событий Security Audit (приложение SQL Server Profiler)Security Audit Event Category (SQL Server Profiler)
Описываются события аудита, которые можно использовать в приложении Приложение SQL Server ProfilerSQL Server Profiler.Explains the audit events you can use in Приложение SQL Server ProfilerSQL Server Profiler. Дополнительные сведения см. в разделе Start SQL Server Profiler.For more information, see SQL Server Profiler.

Трассировка SQLSQL Trace
Объясняется, как в пользовательских приложениях можно использовать приложение трассировки SQL вместо приложения SQL ServerSQL Server Profiler.Explains how SQL Trace can be used from within your own applications to create traces manually, instead of using SQL ServerSQL Server Profiler.

Триггеры DDLDDL Triggers
Объясняется, как можно использовать триггеры языка DDL для отслеживания изменения в базах данных.Explains how you can use Data Definition Language (DDL) triggers to track changes to your databases.

Microsoft TechNet, технический центр SQL Server: "SQL Server 2005 — безопасность и защита"Microsoft TechNet: SQL Server TechCenter: SQL Server 2005 Security and Protection
Содержит актуальные сведения о безопасности SQL ServerSQL Server .Provides up-to-date information about SQL ServerSQL Server security.

См. также:See Also

Действия и группы действий подсистемы аудита SQL Server SQL Server Audit Action Groups and Actions
Записи подсистемы аудита SQL ServerSQL Server Audit Records