다음을 통해 공유


CREATE DATABASE AUDIT SPECIFICATION(Transact-SQL)

SQL Server 감사 기능을 사용하여 데이터베이스 감사 사양 개체를 만듭니다. 자세한 내용은 SQL Server Audit(데이터베이스 엔진)를 참조하십시오.

항목 링크 아이콘 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 보안 주체의 이름입니다. 자세한 내용은 보안 주체(데이터베이스 엔진)를 참조하십시오.

  • WITH ( STATE = { ON | OFF } )
    감사에서 이 감사 사양에 대한 레코드를 수집하거나 수집하지 못하도록 설정합니다.

주의

데이터베이스 감사 사양은 지정된 데이터베이스에 있는 비보안 개체입니다. 데이터베이스 감사 사양을 처음 만들 때는 사용할 수 없는 상태입니다.

사용 권한

ALTER ANY DATABASE AUDIT 권한이 있는 사용자는 데이터베이스 감사 사양을 만들어 모든 감사에 바인딩할 수 있습니다.

만들어진 데이터베이스 감사 사양은 CONTROL SERVER, ALTER ANY DATABASE AUDIT 권한이 있는 보안 주체나 sysadmin 계정이 볼 수 있습니다.

다음 예에서는 Payrole_Security_Audit라는 서버 감사를 만들고 AdventureWorks2012 데이터베이스의 HumanResources.EmployeePayHistory 테이블에 대해 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)

개념

서버 감사 및 서버 감사 사양 만들기