You need to enable JavaScript to run this app.
导航
数据库审计管理
最近更新时间:2025.01.21 14:17:41首次发布时间:2022.12.16 14:09:19

本文介绍如何在数据库工作台 DBW 控制台管理数据库审计日志,包括开启数据库审计、查询数据库审计和关闭数据库审计日志。

背景信息

数据库工作台 DBW 提供了 V1 和 V2 两个版本的数据库审计功能,关于这两个版本的相关信息如下表所示:

版本区别

V2(推荐)

  • 费用:推广期内 V2 版本的数据库审计暂时免费。

  • 审计日志存储方式:审计数据由数据库工作台 DBW 自行存储。

  • 功能:相对 V1 版本支持更多指标,操作更简便;同时还新增了更多新功能,具体功能详情请参见查询审计日志

  • SQL 存储时长:推广期内仅存储一天,如有其他需求请提交工单联系技术支持。

  • 删除实例:当数据库实例被删除时,该实例的审计功能将被强制关闭,且数据库实例的审计日志也会被删除。

  • 下载审计日志:仅支持导出当前页的审计日志。

V1

  • 费用:关于 V1 版本的相关费用如下所示:

    • 采集费用:推广期内免费提供日志采集,推广期后将按日志量的采集收取相关费用。具体收费信息,请参见数据库工作台 DBW 的 计费规则

    • 存储费用:推广期内每个实例有 5GiB 的免费存储空间,超出部分将收取相应费用。具体收费信息,请参见日志服务的计费规则

  • 功能:支持基础的审计指标和导出审计日志。

  • 审计日志存储方式:审计数据由日志服务存储。开启审计时,会默认在日志服务中可用的日志项目内创建一个日志主题,用于存储本实例的审计日志,审计日志的名称格式为 rds-sql-audit-****。当不存在可用日志项目时会先创建一个日志项目。请勿删除审计功能在日志服务中涉及的日志项目日志主题,否则将导致该功能不可用。

  • 删除实例:当数据库实例被删除时,该实例的审计功能将被强制关闭。关闭该功能后审计日志最长保留时间将根据您设置的审计日志保留时长保留,该时间段内日志服务将持续收费,您也可以在日志服务内提前删除该日志。

  • SQL 存储时长:推广期内支持免费查看近 30 天内的审计日志,如 V1 版本的数据库审计有其他需求可在日志主题内修改,详细操作,请参见修改日志主题配置

  • 下载审计日志

    • 单次最多支持导出 100 万条数据。

    • 下载审计日志的任务默认保留 1 天,到期后任务将被自动删除。同时,获取的下载链接有效期为 5 分钟,请在获取链接后及时下载审计日志。

前提条件

  • 开启 V2 的前提条件:

    • 已创建云数据库 MySQL 版实例。详细操作,请参见创建实例

    • 实例已开启数据库代理功能,详细操作,请参见开启数据库代理

  • 开启 V1 的前提条件:

    说明

    适用中国香港地域可开启 V1 审计日志,其他地域如需开启请提交工单联系技术支持。

    • 已开启日志服务

    • 已授权数据库工作台 DBW 可以访问火山引擎日志服务。详细操作,请参见权限管理

    • 已创建云数据库 MySQL 版实例。详细操作,请参见创建实例

    • 实例已开启数据库代理功能,详细操作,请参见开启数据库代理

注意事项

  • V2 数据库审计的注意事项如下所示:

    • 支持记录 SSL 连接下的审计日志。

    • 由于 V2 版本的数据库审计信息均为全量 SQL 洞察中 SQL 明细所记录的信息,因此在开启 V2 版本的数据库审计时,默认同步开启全量 SQL 洞察 ,反之关闭 V2 版本的数据库审计时,全量 SQL 洞察也会同步关闭。

    • 当数据库审计的 SQL 记录超过 4K 时,那么 V2 版本的内核将截断 SQL 信息,截断后将无法正常解析表名、SQL 指纹等。

    • 数据库审计会统计所有的 DQL、DML 和 DDL 操作记录,这些操作记录由数据库内核分析获取。

    • 审计日志不解析实际的参数值,并且在 SQL 查询量较大时会出现少量记录丢失的情况。因此,通过这种方式统计增量数据可能会存在不准确的问题。

    • 数据库审计虽然对开源标准 MySQL Driver 进行过数据完整性验证,但是对于使用第三方工具或涉及修改 Driver 的情况,可能会由于网络协议兼容问题致使部分语句不完整。

  • V1 数据库审计的注意事项如下所示:

    • 审计日志不记录预处理协议中的 PrepareClose 操作。

    • 数据库审计会统计所有的 DQL、DML 和 DDL 操作记录,这些操作记录由系统通过网络协议分析获取。

    • 审计日志不解析实际的参数值,并且在 SQL 查询量较大时会出现少量记录丢失的情况。因此,通过这种方式统计增量数据可能会存在不准确的问题。

    • 数据库审计虽然对开源标准 MySQL Driver 进行过数据完整性验证,但是对于使用第三方工具或涉及修改 Driver 的情况,可能会由于网络协议兼容问题致使部分语句不完整。

    • 暂不支持记录 SSL 连接下的审计日志。

开启审计日志

  1. 登录 DBW 控制台

  2. 在顶部菜单栏,选择项目和地域。

  3. 在左侧导航栏,选择运维管理 > 观测诊断

  4. 运维观测页面左上角,单击下拉图标,选择目标实例。

    说明

    • 您也可以通过实例 ID 搜索切换至目标实例。
    • 当您通过左侧导航栏的运维观测进入数据库审计页签时,默认展示实例列表中第一个实例的相关信息。
  5. 在目标实例页面,单击数据库审计

  6. 数据库审计页面,按需开启不同版本的数据库审计。

    数据库版本操作步骤

    V2 版本

    1. 选择审计版本配置向导页面,勾选审计 V2 版本

    2. 单击下一步

    3. 配置功能配置向导页面,配置以下信息:

      1. SQL 存储时长:V2 版本的审计日志默认存储时长为 1 天,且不支持修改。

      2. 存储 SQL 类型:按需勾选需要存储的 SQL 类型,支持全选也支持按需勾选存储 SELECTINSERTUPDATEDELETEALTERCREATECREATEDROPRENAMETUNCATEOTHER

      3. SQL 存储费用:当前处于邀测阶段,暂不计费。

      4. 标签:标签用于标记资源,便于搜索和资源聚合。单击标签后的编辑图标,设置标签键和标签值,为实例添加标签。标签键和标签值的配置规则如下:

        • 不支持设置以任何形式的 volc: 为开头的 Key,例如 Volc:VOLC: 等。

        • 可以包含语言字符、数字、空格和英文符号,英文符号包括 _.:/=+-@

        • 长度需在 1~128 个字符内。

        • 使用 UTF-8 编码的 Unicode 格式。

          说明

          • 单次最多支持绑定 20 个标签,单个实例最多绑定 50 个标签。如需对标签进行统一管理,请参考标签管理

          • 同一个资源拥有的标签 Key 不可重复,且一个标签 Key 只有一个 Value。

      5. 协议:阅读并勾选我已阅读并同意《数据库工作台 DBW 服务条款》

    4. 单击开启数据库审计 & SQL 洞察

    V1 版本

    说明

    适用中国香港地域可开启 V1 审计日志,其他地域如需开启请提交工单联系技术支持。

    1. 选择审计版本配置向导页面,勾选审计 V1 版本

    2. 单击下一步

    3. 配置功能配置向导页面,单击点击开通,开通日志服务。

      说明

      开通审计日志功能前,您需开通日志服务 TLS。如果已授权可忽略此步骤。

    4. (可选)授权数据库工作台 DBW 访问日志服务。

      说明

      开通审计日志功能前,您需先授权数据库工作台 DBW 访问火山引擎日志服务 TLS。如果已授权可忽略此步骤。

      1. 数据库审计页签,单击点击授权

      2. 确定授权吗对话框,单击确定,授权数据库工作台 DBW 访问日志服务。

      说明

      成功授权后,产生的日志才能成功写入日志服务。

    5. 配置功能配置向导页面,请仔细阅读注意事项,并配置以下信息:

      1. 审计日志保留时长:当前支持设置保留 1 天7 天30 天(默认值)、180 天1 年3 年,如有其他时长需求,待开启该功能后,可在数据库审计页签,单击查看日志主题修改日志存储时长。

      2. 设置标签:标签用于标记资源,便于搜索和资源聚合。单击标签后的编辑图标,设置标签键和标签值,为实例添加标签。标签键和标签值的配置规则如下:

        • 不支持设置以任何形式的 volc: 为开头的 Key,例如 Volc:VOLC: 等。

        • 可以包含语言字符、数字、空格和英文符号,英文符号包括 _.:/=+-@

        • 长度需在 1~128 个字符内。

        • 使用 UTF-8 编码的 Unicode 格式。

          说明

          • 单次最多支持绑定 20 个标签,单个实例最多绑定 50 个标签。如需对标签进行统一管理,请参考标签管理

          • 同一个资源拥有的标签 Key 不可重复,且一个标签 Key 只有一个 Value。

      3. 数据保留策略:(可选)勾选是否在删除实例时,同时删除对应得日志服务主题,并清空历史数据。

      4. 协议:阅读并勾选我已阅读并同意《数据库工作台 DBW 服务条款》

    6. 单击开启审计

查询审计日志

  1. 登录 DBW 控制台

  2. 在顶部菜单栏,选择项目和地域。

  3. 在左侧导航栏,选择运维管理 > 观测诊断

  4. 观测诊断页面左上角,单击下拉图标,选择目标实例。

    说明

    • 您也可以通过实例 ID 搜索切换至目标实例。
    • 当您通过左侧导航栏的观测诊断进入数据库审计页签时,默认展示实例列表中第一个实例的相关信息。
  5. 在目标实例页面,单击数据库审计

  6. 数据库审计页签,查看目标版本的审计日志。

    如果您同时开启了 V1 和 V2 版本的数据库审计,那么您可以在页面右上角按需筛选目标版本的审计日志。

    • 审计 V2 版本:您可以按照日期、数据库名表名和节点筛选,也可以单击高级筛选,进行更细粒度的筛选,部分参数信息如下所示。

      • 日期:按需设置查询审计日志的时间,当前最多仅支持查看最近 24 小时内的审计日志。

      • 执行时间:公共服务区网络的响应时间(RT)。按需设置执行时长,单位:毫秒(ms)。

    • 审计 V1 版本:您可以按照日期、数据库名表名筛选,也可以单击高级筛选,进行更细粒度的筛选,具体参数信息如下所示。

      • 日期:推广期内支持免费查看近 30 天内的审计日志,推广期后仅支持免费查看近 1 天内的审计日志,如有其他需求可单击该页签右上角的查看日志主题,修改日志保留时间。

      • 日志等级:在下拉列表中按需勾选日志等级,支持多选,当前支持的日志等级有 normalwarningincident

      • 执行时间:公共服务区网络的响应时间(RT)。按需设置执行时长,单位:毫秒(ms)。

      • 日志类型:在下拉列表中勾选目标日志类型,支持多选。支持的日志类型如下所示:

        • normal:登录数据库、登出数据库、创建数据库、创建表、修改表、创建视图、修改视图、创建索引、创建存储过程、修改存储过程、创建函数、修改函数、创建触发器、修改触发器、创建事件、修改事件、执行存储过程、执行函数、查询表、查询表(系统表)、插入数据、删除数据和其他操作。

        • warning:修改数据库、删除视图、修改索引、删除存储过程、删除函数、删除触发器、删除事件、全量表查询、更新表信息和大范围表查询。

        • incident:删除数据库、删除索引、删除表、更新系统表信息、插入数据(系统表)、删除数据(系统表)、全量表删除、大范围表删除、全量表删除、大范围表删除、全量表更新、大范围表更新和TRUNCATE表。

        说明

        当由于某些原因导致的影响行数较多,影响数据超过 500 行且超过表数据的 10% 时,也属于 warning 等级。

  7. 单击查询。成功筛选后,您可以在审计日志列表区域查看目标日志信息,具体如下所示:

    • V2 和 V1 版本的审计日志明细信息如下所示:

      • V2 和 V1 版本共同指标:用户名、数据库名称、表名、SQL 语句、SQL 类型和影响行数。

      • V2 独有指标:执行耗时、SQL 耗时(ms)、执行结果、节点名称、会话 ID、CPUTime、RowLockWaitTime、MDLWaitTime、LatchWaitTime、TRXCommitTime、CCLWaitTime、SocketSendTime、ThreadScheduleTime、ThreadWaitTime、扫描行数、返回行数、发送字节数、逻辑页读取次数、IO读取字节数、IO读页面数量和磁盘临时表数量。

      • V1 独有指标:日志等级、客户端 IP、产生时间、执行时间和日志类型。

    • 同时您还可以进行以下操作:

      • 查看日志内具体执行语句:单击目标日志的 SQL 语句列下复制图标,查看具体执行语句。

      • 下载日志:单击下载图标,下载需要导出的审计日志信息。

下载数据库审计

  1. 登录 DBW 控制台

  2. 在顶部菜单栏,选择项目和地域。

  3. 在左侧导航栏,选择运维管理 > 观测诊断

  4. 观测诊断页面左上角,单击下拉图标,选择目标实例。

  5. 在目标实例页面,单击数据库审计

  6. 数据库审计页签,下载目标版本的审计日志。

    如果您同时开启了 V1 和 V2 版本的数据库审计,那么您可以在页面右上角按需筛选目标版本的审计日志。

    • 下载 V2 版本的审计日志

      1. 在页面右上角,将数据库版本切换为审计 V2 版本

      2. 审计日志页签,单击下载图标。

      3. 导出对话框,按需勾选需要下载审计日志的字段。

      4. 单击确定

    • 下载 V1 版本的审计日志

      1. 在页面右上角,将数据库版本切换为审计 V1 版本

      2. 审计日志页签,单击下载图标,选择下载类型。

        • 导出当前页

          1. 单击导出当前页

          2. 导出数据对话框,按需勾选需要下载审计日志的字段。

          3. 单击确定

        • 导出全部日志

          1. 导出日志

            1. 单击导出全部日志

            2. 导出审计日志对话框,配置相关参数信息,具体如下表所示。

              参数描述
              文件格式选择下载的日志格式,当前支持 CVSJSON 两种格式。
              导出范围按需选择导出的日志范围,当前支持自定义近 2 小时近 12 小时近 24 小时

              自定义时间段

              选择日志导出的时间范围。

              说明

              导出范围选择自定义时支持设置该参数。

            3. 单击确定

          2. 下载日志

            1. 数据库审计页签,单击下载图标,然后选择导出历史

            2. 导出历史对话框,选择状态已生成的目标任务,单击操作列下的下载文件

关闭审计日志

说明

  • 关闭 V1 版本的审计日志时,您需要关注以下信息:

    • 关闭该功能后审计日志最长保留时间将根据您设置的审计日志保留时长保留,该时间段内审计日志将持续收费,您也可以在日志服务内提前删除该日志。

    • 关闭该功能后,日志服务的免费额度将失效。

  • 关闭 V2 版本的数据审计时,全量 SQL 洞察也会同步关闭无法正常使用,需谨慎操作。

  1. 登录 DBW 控制台

  2. 在顶部菜单栏,选择项目和地域。

  3. 在左侧导航栏,选择运维管理 > 观测诊断

  4. 观测诊断页面左上角,单击下拉图标,切换实例。

  5. 在目标实例页面,单击数据库审计

  6. 数据库审计页签,按需选择关闭的审计版本。

    • 关闭 V2 版本的审计日志

      1. 在页面右上角,将数据库版本切换为审计 V2 版本

      2. 审计日志页签,单击服务设置

      3. 服务设置对话框,关闭全量 SQL 洞察

      4. 单击确定

    • 关闭 V1 版本的审计日志

      1. 在页面右上角,将数据库版本切换为审计 V2 版本

      2. 审计日志页签,单击关闭数据库审计

      3. 确认删除对话框,确认是否删除日志主题

        如果不删除,审计日志最长保留时长将根据您设置的审计日志保留时长保留,该段时间内审计日志将持续收费;如果删除,将清空历史数据,释放日志服务存储空间,避免持续向日志服务付费。

      4. 单击确定

设置 V1 版审计日志

说明

  • 关闭该功能后审计日志最长保留时间将根据您设置的审计日志保留时长保留,该时间段内审计日志将持续收费,您也可以在日志服务内提前删除该日志。

  • 关闭该功能后,日志服务的免费额度将失效。

  1. 登录 DBW 控制台

  2. 在顶部菜单栏,选择项目和地域。

  3. 在左侧导航栏,选择运维管理 > 观测诊断

  4. 观测诊断页面左上角,单击下拉图标,切换实例。

  5. 在目标实例页面,单击数据库审计

  6. 数据库审计页签,切换审计版本为审计 V1 版本,单击服务设置

  7. 服务设置 对话框,配置以下参数信息

    参数说明
    审计日志保留时长按需设置审计日志的保留时长,支持选择 1 天、7 天、30 天、180 天、1 年和 3 年。

    设置标签

    标签用于标记资源,便于搜索和资源聚合。单击标签后的编辑图标,设置标签键和标签值,为实例添加标签。标签键和标签值的配置规则如下:

    • 不支持设置以任何形式的 volc: 为开头的 Key,例如 Volc:VOLC: 等。

    • 可以包含语言字符、数字、空格和英文符号,英文符号包括 _.:/=+-@

    • 长度需在 1~128 个字符内。

    • 使用 UTF-8 编码的 Unicode 格式。

    说明

    • 单次最多支持绑定 20 个标签,单个实例最多绑定 50 个标签。如需对标签进行统一管理,请参考标签管理

    • 同一个资源拥有的标签 Key 不可重复,且一个标签 Key 只有一个 Value。

  8. 单击关闭