SQL Server 审核记录

使用 SQL Server 审核功能,可以对服务器级别和数据库级别事件组和事件进行审核。 有关详细信息,请参阅SQL Server 审核(数据库引擎). SQL Server。

审核由零个或多个审核操作项组成,这些操作项会记录到审核“目标”。 审核目标可以是二进制文件、Windows 应用程序事件日志或 Windows 安全事件日志。 发送到目标的记录可以包含下表中介绍的元素。

列名

说明

类型

始终可用

event_time

触发可审核操作的日期/时间。

datetime2

sequence_no

跟踪单个审核记录中的记录顺序,该记录太大而无法放在写入缓冲区中以进行审核。

int

action_id

操作的 ID

提示提示

要将 action_id 用作谓词,必须将它从字符串转换为数值。 有关详细信息,请参阅使用 action_id / class_type 谓词筛选 SQL Server 审核

varchar(4)

succeeded

指示触发事件的操作是否成功

bit – 1 = Success,0 = Fail

permission_bitmask

当适用时,显示授予、拒绝或撤消的权限

bigint

is_column_permission

指示列级别权限的标志

bit – 1 = True, 0 = False

session_id

发生该事件的会话 ID。

int

server_principal_id

在其中执行操作的登录上下文 ID。

int

database_principal_id

在其中执行操作的数据库用户上下文 ID。

int

object_ id

发生审核的实体的主 ID。 这包括:

  • 服务器对象

  • 数据库

  • 数据库对象

  • 架构对象

int

target_server_principal_id

可审核操作适用的服务器主体。

int

target_database_principal_id

可审核操作适用的数据库主体。

int

class_type

发生审核的可审核实体的类型。

varchar(2)

session_server_principal_name

会话的服务器主体。

sysname

server_principal_name

当前登录名。

sysname

server_principal_sid

当前登录名 SID。

varbinary

database_principal_name

当前用户。

sysname

target_server_principal_name

操作的目标登录名。

sysname

target_server_principal_sid

目标登录名的 SID。

varbinary

target_database_principal_name

操作的目标用户。

sysname

server_instance_name

发生审核的服务器实例的名称。 使用标准计算机\实例格式。

nvarchar(120)

database_name

发生此操作的数据库上下文。

sysname

schema_name

发生此操作的架构上下文。

sysname

object_name

发生审核的实体的名称。 这包括:

  • 服务器对象

  • 数据库

  • 数据库对象

  • 架构对象

  • TSQL 语句(如果有)

sysname

statement

TSQL 语句(如果有)

nvarchar(4000)

additional_information

有关此事件的其他任何信息,存储为 XML。

nvarchar(4000)

备注

某些操作不填充列的值,这是因为它可能不适用于此操作。

SQL Server 审核可以为审核记录中的字符字段存储 4000 个数据字符。 当可审核操作返回的 additional_informationstatement 值返回的字符超过 4000 个时,sequence_no 列用于将多个记录写入到单个审核操作的审核报表中以记录此数据。 该过程如下所示:

  • statement 列分为 4000 个字符。

  • SQL Server 审核作为具有部分数据的审核记录的第一行写入。 所有其他字段在每一行中是重复的。

  • sequence_no 值是递增的。

  • 此过程将一直重复,直至记录了所有数据为止。

可以使用 sequence_no 值按顺序读取行以及 event_Timeaction_idsession_id 列来连接数据,从而标识操作。

相关内容

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)

sys.dm_audit_class_type_map (Transact-SQL)