配置 CloudWatch 日志流
默认情况下,Amazon RDS for SQL Server Audit 会将已完成的审计文件传输到 Amazon S3 存储桶。您也可以将审计日志流式传输到 Amazon CloudWatch Logs(而不是 Amazon S3),或者同时传输到两者。
将审计日志流式传输到 Amazon CloudWatch Logs,您可以执行以下操作:
-
将审计记录存储在具有您定义的保留期的高持久性存储空间中。
-
搜索和筛选审计日志数据,并构建指标筛选条件和 CloudWatch 警报。
-
在账户之间共享日志数据并将其导出到 Amazon S3。
-
流式传输数据或实时处理数据。
启用 CloudWatch 流式传输
CloudWatch 流式传输由 SQLSERVER_AUDIT 选项上的单个布尔值设置 PUBLISH_TO_CLOUDWATCH 控制。将其设置为 true 以将审计日志流式传输到 Amazon CloudWatch Logs,或设置为 false 以停止。
注意
CloudWatch 发布不需要客户 IAM 角色。当 PUBLISH_TO_CLOUDWATCH 为 true 时,Amazon RDS 会为您管理将审计日志传输到 Amazon CloudWatch Logs 的过程,您无需为它创建或附加任何 IAM 角色或权限。由于 CloudWatch 可以作为独立的目标,因此 IAM_ROLE_ARN 和 S3_BUCKET_ARN 是可选的,仅当您还需要 S3 目标时才提供它们。必须至少配置一个目标(CloudWatch 和/或 S3)。
在新选项组上
将 SQLSERVER_AUDIT 选项添加到选项组时(有关完整步骤,请参阅将 SQL Server Audit 添加到数据库实例选项),请将 PUBLISH_TO_CLOUDWATCH 设置设为 true。
在现有选项组上
在现有选项组上启用 CloudWatch 流式传输功能
-
打开 Amazon RDS 控制台,选择选项组,然后打开附加到数据库实例的选项组。
-
选择修改选项组。
-
在现有
SQLSERVER_AUDIT选项上,将PUBLISH_TO_CLOUDWATCH设置设为true。 -
保存更改,选择是立即应用它们,还是在下一个维护时段内应用它们。
由于单个选项组可以由多个数据库实例共享,因此,此更改会影响使用该选项组的每个数据库实例。要仅更改一个实例,请为其使用单独的选项组。
选项组处于活动状态后,您无需重启数据库实例,只要更改生效,审计日志就会立即开始流式传输到 Amazon CloudWatch Logs。要停止流式传输,请将 PUBLISH_TO_CLOUDWATCH 重新设置为 false。
审计日志在 CloudWatch 中出现的位置
Amazon RDS 将 SQL Server 审计日志发布到 RDS 管理的 CloudWatch Logs 日志组,该日志组名为:
/aws/rds/instance/db_instance_name/sqlaudit
在此日志组中,每个节点都发布到其自己的日志流,日志流由节点标识符标识。对于多可用区(始终开启)实例,主实例和辅助实例分别写入同一 sqlaudit 日志组中的单独日志流,按其节点标识符进行区分,因此来自两个副本的审计事件是独立捕获的。
版本可用性
任何支持 SQL Server Audit 的引擎版本均可将审计日志流式传输到 CloudWatch,除了基本 SQL Server Audit 支持之外,没有其它版本限制。