为 Amazon RDS for Microsoft SQL Server 配置审计策略
SQL Server 数据库实例具有服务器审计 RDS_DAS_AUDIT
(由 Amazon RDS 管理)。您可以在服务器审计规范 RDS_DAS_SERVER_AUDIT_SPEC
中定义策略以记录服务器事件。您可以创建数据库审计规范,例如 RDS_DAS_DB_<name>
,并定义记录数据库事件的策略。有关服务器和数据库级审计操作组的列表,请参阅《Microsoft SQL Server 文档》中的 SQL Server 审计操作组和操作
原定设置服务器策略仅监控失败的登录,以及对数据库活动流的任何数据库或服务器审计规范进行的更改。
审计和审计规范的限制包括以下内容:
-
当数据库活动流处于锁定状态时,您无法修改服务器或数据库审计规范。
-
您无法修改服务器审计
RDS_DAS_AUDIT
规范。 -
您无法修改 SQL Server 审计
RDS_DAS_CHANGES
或其相关的服务器审计规范RDS_DAS_CHANGES_AUDIT_SPEC
。 -
创建数据库审计规范时,必须使用格式
RDS_DAS_DB_<name>
,例如RDS_DAS_DB_databaseActions
。
重要
对于较小的实例类,我们建议您不要审计所有数据,而只审计所需的数据。这有助于减少数据库活动流对这些实例类的性能影响。
以下示例代码修改了服务器审计规范 RDS_DAS_SERVER_AUDIT_SPEC
,并对所有注销和成功的登录操作进行审计:
ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC] WITH (STATE=OFF); ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC] ADD (LOGOUT_GROUP), ADD (SUCCESSFUL_LOGIN_GROUP) WITH (STATE = ON );
以下示例代码创建数据库审计规范 RDS_DAS_DB_database_spec
,并将其附加到服务器审计 RDS_DAS_AUDIT
:
USE testDB; CREATE DATABASE AUDIT SPECIFICATION [RDS_DAS_DB_database_spec] FOR SERVER AUDIT [RDS_DAS_AUDIT] ADD ( INSERT, UPDATE, DELETE ON testTable BY testUser ) WITH (STATE = ON);
配置审计规范后,确保将规范 RDS_DAS_SERVER_AUDIT_SPEC
和 RDS_DAS_DB_<name>
设置为 ON
状态。现在,它们可以将审计数据发送到您的数据库活动流。