跳至内容

如何为 Amazon RDS for MySQL 或 MariaDB 实例启用审计日志记录并将日志发布到 CloudWatch?

1 分钟阅读
0

我想审计数据库 (DB) 活动,以满足运行 MySQL 或 MariaDB 的 Amazon Relational Database Service (Amazon RDS) 数据库实例的要求。然后,我想将日志发布到 Amazon CloudWatch。

简短描述

要捕获连接、断开连接、查询或其他服务器活动等事件,请添加和配置 MariaDB 审计插件。然后,将数据库实例与自定义选项组进行关联。然后,将日志发布到 CloudWatch。

Amazon RDS 支持以下版本的 MySQL 和 MariaDB 审计插件选项设置

  • 所有 MySQL 5.7 版本
  • MySQL 8.0.25 及更高的 8.0 版本
  • MariaDB 10.3 及更高版本

如果您使用 Amazon Aurora MySQL 兼容版,请参阅如何为我的 Amazon Aurora MySQL 数据库集群启用审计日志记录并将日志发布到 CloudWatch?

解决方法

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

添加和配置 MariaDB 审计插件,然后将数据库实例与自定义选项组进行关联

完成以下步骤:

  1. 创建自定义选项组,或修改现有的自定义选项组
  2. 将 MariaDB 审计插件选项添加到选项组,然后配置选项设置。
  3. 要将选项组应用于数据库实例,请执行以下操作之一:
    对于新的数据库实例,将该实例配置为在启动数据库实例时使用新创建的选项组。
    对于现有数据库实例,修改数据库实例,然后附加新的选项组。

使用 MariaDB 审计插件配置数据库实例后,无需重启数据库实例。当选项组处于活动状态时,审计立即开始。

**注意:**Amazon RDS 不支持在 MariaDB 审计插件中关闭日志记录。要关闭审计日志记录,请将该插件从关联的选项组中移除,以自动重启实例。要限制记录中查询字符串的长度,请使用 SERVER_AUDIT_QUERY_LOG_LIMIT 选项。

将审计日志发布到 CloudWatch

您可以使用 Amazon RDS 控制台或 AWS CLI 启用 CloudWatch 日志导出。

要使用 Amazon RDS 控制台,完成以下步骤:

  1. 打开 Amazon RDS 控制台
  2. 在导航窗格中,选择 Databases(数据库)。
  3. 选择要用于将日志数据导出到 CloudWatch 的数据库实例。
  4. 选择 Modify(修改)。
  5. Additional monitoring settings(其他监控设置)部分中,对于 Log exports(日志导出),选择 Audit log(审计日志)。
  6. 选择 Continue(继续)。
  7. 查看 Summary of modifications(修改摘要),然后选择 Modify DB instance(修改数据库实例)。
    **注意:**当您选择 Apply immediately(立即应用)时,可能会出现停机。

要使用 AWS CLI,请运行 modify-db-instance 命令以启用 CloudWatch 日志导出:

aws rds modify-db-instance --db-instance-identifier db_instance --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit"]}'

**注意:**将 db_instance 替换为您的数据库实例的名称。

启用审计日志记录并修改实例以导出日志后,记录在审计日志中的事件将发送到 CloudWatch。然后,您可以在 CloudWatch 中监控日志事件

相关信息

适用于 MariaDB 数据库引擎的选项

连接到 MariaDB 数据库实例