CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)
Создает объект спецификации аудита базы данных с помощью компонента аудита SQL Server. Дополнительные сведения см. в разделе Основные сведения о подсистеме аудита SQL Server.
Синтаксис
CREATE DATABASE AUDIT SPECIFICATION audit_specification_name
{
FOR SERVER AUDIT audit_name
[ { ADD ( { <audit_action_specification> | audit_action_group_name } )
} [, ...n] ]
[ WITH ( STATE = { ON | OFF } ) ]
}
[ ; ]
<audit_action_specification>::=
{
action [ ,...n ]ON [ class :: ] securable BY principal [ ,...n ]
}
Аргументы
audit_specification_name
Имя спецификации аудита.audit_name
Имя аудита, к которому применяется эта спецификация.audit_action_specification
Спецификация действий, выполняемых участниками над защищаемыми объектами, которые должны быть зарегистрированы в ходе аудита.action
Имя одного или нескольких действий уровня базы данных, подлежащих аудиту. Список действий аудита см. в разделе Действия и группы действий подсистемы аудита SQL Server.audit_action_group_name
Имя одной или нескольких групп действий уровня базы данных, подлежащих аудиту. Список групп действий аудита см. в разделе Действия и группы действий подсистемы аудита SQL Server.class
Имя класса защищаемого объекта (если применимо).securable
Таблица, представление или другой защищаемый объект в базе данных, к которой применяется действие аудита или группа действий аудита. Дополнительные сведения см. в разделе Защищаемые объекты.principal
Имя участника на уровне SQL Server, к которому применяется действие аудита или группа действий аудита. Дополнительные сведения см. в разделе Участники (компонент Database Engine).WITH ( STATE = { ON | OFF } )
Включает или отключает сбор записей для этой спецификации аудита.
Замечания
Спецификации аудита базы данных являются незащищаемыми объектами, которые находятся в определенной базе данных. После создания спецификация аудита базы данных находится в отключенном состоянии.
Разрешения
Пользователи с разрешением ALTER ANY DATABASE AUDIT могут создавать спецификации аудита базы данных и привязывать их к любому аудиту.
После создания спецификации аудита базы данных ее могут просматривать участники с разрешениями CONTROL SERVER или ALTER ANY DATABASE AUDIT или с учетной записью sysadmin.
Примеры
В следующем примере создается аудит сервера с именем Payrole_Security_Audit, а затем спецификация аудита базы данных с именем Payrole_Security_Audit, которая выполняет аудит инструкций SELECT и INSERT, выполняемых пользователем dbo, для таблицы HumanResources.EmployeePayHistory в базе данных AdventureWorks2008R2.
USE master ;
GO
-- Create the server audit.
CREATE SERVER AUDIT Payrole_Security_Audit
TO FILE ( FILEPATH =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA' ) ;
GO
-- Enable the server audit.
ALTER SERVER AUDIT Payrole_Security_Audit
WITH (STATE = ON) ;
GO
-- Move to the target database.
USE AdventureWorks2008R2 ;
GO
-- Create the database audit specification.
CREATE DATABASE AUDIT SPECIFICATION Audit_Pay_Tables
FOR SERVER AUDIT Payrole_Security_Audit
ADD (SELECT , INSERT
ON HumanResources.EmployeePayHistory BY dbo )
WITH (STATE = ON) ;
GO
См. также