共用方式為


CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)

使用 SQL Server Audit 功能建立資料庫稽核規格物件。 如需詳細資訊,請參閱<SQL Server Audit (Database Engine)>。

主題連結圖示 Transact-SQL 語法慣例

語法

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 動作群組和動作>。

  • audit_action_group_name
    這是一或多個資料庫層級可稽核的動作群組名稱。 如需稽核動作群組的清單,請參閱<SQL Server Audit 動作群組和動作>。

  • class
    這是安全性實體上的類別名稱 (適用的話)。

  • securable
    這是資料庫中套用稽核動作或稽核動作群組的資料表、檢視表或其他安全性實體物件。 如需詳細資訊,請參閱<安全性實體>。

  • principal
    這是套用稽核動作或稽核動作群組的 SQL Server 主體名稱。 如需詳細資訊,請參閱<主體 (Database Engine)>。

  • WITH ( STATE = { ON | OFF } )
    啟用或停用從這個稽核規格收集而來之記錄的稽核。

備註

資料庫稽核規格是位於給定資料庫內的非安全性實體物件。 當建立資料庫稽核規格之後,它就會處於停用狀態。

權限

具有 ALTER ANY DATABASE AUDIT 權限的使用者可以建立資料庫稽核規格,並將其繫結至任何稽核。

在建立資料庫稽核規格之後,具有 CONTROL SERVER、 ALTER ANY DATABASE AUDIT 權限或系統管理員 (sysadmin) 帳戶的主體將可以檢視此規格。

範例

下列範例會針對 AdventureWorks2012 資料庫中的 HumanResources.EmployeePayHistory 資料表,建立稱為 Payrole_Security_Audit 的伺服器稽核,然後建立可由 dbo 使用者稽核 SELECT 和 INSERT 陳述式的資料庫稽核規格,其名稱為 Payrole_Security_Audit。

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 AdventureWorks2012 ;
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

請參閱

參考

CREATE SERVER AUDIT (Transact-SQL)

ALTER SERVER AUDIT (Transact-SQL)

DROP SERVER AUDIT (Transact-SQL)

CREATE SERVER AUDIT SPECIFICATION (Transact-SQL)

ALTER SERVER AUDIT SPECIFICATION (Transact-SQL)

DROP SERVER AUDIT SPECIFICATION (Transact-SQL)

CREATE DATABASE AUDIT SPECIFICATION (Transact-SQL)

ALTER DATABASE AUDIT SPECIFICATION (Transact-SQL)

DROP DATABASE AUDIT SPECIFICATION (Transact-SQL)

ALTER AUTHORIZATION (Transact-SQL)

sys.fn_get_audit_file (Transact-SQL)

sys.server_audits (Transact-SQL)

sys.server_file_audits (Transact-SQL)

sys.server_audit_specifications (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)

概念

建立伺服器稽核與伺服器稽核規格