九游平台/ 云数据库 rds/ / / / 开启sql审计日志
更新时间:2024-04-10 gmt 08:00

开启sql审计日志-九游平台

当您开通sql审计功能,系统会将所有的sql操作记录下来存入日志文件,方便用户下载并查询。

rds for mysql默认关闭sql审计功能,打开可能会有一定的性能影响,本章节指导您如何打开、修改或关闭sql审计日志。

  • 主实例和只读实例都支持开启sql审计日志。
  • 审计日志使用utc时间,不受时区配置的影响。
  • 审计日志开通后,系统会将sql操作记录下来,生成的审计日志文件会暂存在本地,随后上传到obs并保存在备份存储空间。如果审计日志的大小超过了备份空间容量,就会按照超出的部分进行计费。
  • 审计日志清理周期为1小时。修改审计日志的保留天数,1个小时后开始清理过期的审计日志。
  • 审计日志开通后,在业务高峰期可能会产生大量的审计日志,导致本地暂存较多的日志文件,有磁盘打满风险,建议同步开启磁盘自动扩容

支持的数据库版本

仅如下版本支持sql审计功能。如果您的数据库引擎版本较低,请参考升级内核小版本升级到最新版本。
  • 对于rds for mysql 5.6云盘实例,支持5.6.43及其以上版本。
  • 对于rds for mysql 5.6本地盘实例,支持5.6.47.3及其以上版本。
  • 对于rds for mysql 5.7云盘实例,支持5.7.23及其以上版本。
  • 对于rds for mysql 5.7本地盘实例,支持5.7.29.3及其以上版本。
  • 支持rds for mysql 8.0版本。

约束限制

高可用只读如果出现异常,在备只读顶替期间的审计日志不可见。

开启sql审计日志

  1. 单击管理控制台左上角的,选择区域和项目。
  2. 单击页面左上角的,选择“数据库 > 云数据库 rds”,进入rds信息页面。
  3. 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页签。
  4. 在左侧导航栏单击“sql审计”,单击“设置sql审计”,在弹出框中设置sql审计日志保留策略,单击“确定”,保存设置策略。
    开启或修改sql审计
    • 将单击设置为,开启sql审计日志保留策略。
    • 保留天数默认为7天,可设置范围为1~732天。
    图1 设置sql审计

    目前自定义操作项功能仅支持华北-北京四、华南-广州、中国-香港区域,其他区域如需使用该功能,请联系客服申请开通。

    mysql客户端使用preparestatement和定时任务执行的sql语句分别属于prepared_statement和create大类,jdbc使用preparestatement产生的sql语句无法过滤。

    开启sql审计后,支持数据定义(ddl)、数据操作(dml)、数据控制(dcl)、以及其他操作类型的权限,具体如下:

    表1 ddl操作类型的权限

    类型

    具体权限

    备注

    create

    create_db, create_event, create_function, create_index, create_procedure, create_table, create_trigger, create_udf, create_view

    -

    alter

    alter_db, alter_db_upgrade, alter_event, alter_function, alter_instance, alter_procedure, alter_table, alter_tablespace

    2024-01-26开始alter类型不支持alter_user权限。

    drop

    drop_db, drop_event, drop_function, drop_index, drop_procedure, drop_table, drop_trigger, drop_view

    -

    rename

    rename_table

    -

    truncate

    truncate

    -

    repair

    repair

    2024-01-26新增repair类型。

    optimize

    optimize

    2024-01-26新增optimize类型。

    表2 dml操作类型的权限

    类型

    具体权限

    备注

    insert

    insert, insert_select

    -

    delete

    delete, delete_multi

    -

    update

    update, update_multi

    2024-01-26新增update_multi权限。

    replace

    replace, replace_select

    -

    select

    select

    -

    表3 dcl操作类型的权限

    类型

    具体权限

    备注

    create_user

    create_user

    -

    drop_user

    drop_user

    -

    rename_user

    rename_user

    -

    grant

    grant_roles, grant

    2024-01-26新增grant_roles权限。

    revoke

    revoke, revoke_all, revoke_roles

    2024-01-26新增revoke_roles权限。

    alter_user

    alter_user

    2024-01-26新增alter_user类型。

    alter_user_default_role

    alter_user_default_role

    2024-01-26新增alter_user_default_role类型。

    表4 其他操作类型的权限

    类型

    具体权限

    备注

    begin/commit/rollback

    begin, commit, release_savepoint, rollback, rollback_to_savepoint, savepoint

    -

    prepared_statement

    execute_sql,prepare_sql, dealloc_sql

    2024-01-26新增dealloc_sql权限。

    call_procedure

    call_procedure

    2024-01-26新增call_procedure类型。

    kill

    kill

    2024-01-26新增kill类型。

    set_option

    set_option

    2024-01-26新增set_option类型。

    change_db

    change_db

    2024-01-26新增change_db类型。

    uninstall_plugin

    uninstall_plugin

    2024-01-26新增uninstall_plugin类型。

    install_plugin

    install_plugin

    2024-01-26新增install_plugin类型。

    shutdown

    shutdown

    2024-01-26新增shutdown类型。

    slave_start

    slave_start

    2024-01-26新增slave_start类型。

    slave_stop

    slave_stop

    2024-01-26新增slave_stop类型。

    lock_tables

    lock_tables

    2024-01-26新增lock_tables类型。

    unlock_tables

    unlock_tables

    2024-01-26新增unlock_tables类型。

    flush

    flush

    2024-01-26新增flush类型。

    xa

    xa_commit,xa_end,xa_prepare,xa_recover,xa_rollback,xa_start

    2024-01-26新增xa类型。

    关闭sql审计:

    设置为单击,关闭该sql审计。

    勾选“确认关闭审计日志后,所有审计日志文件将立即删除。”复选框,表示同意删除审计日志。

    sql审计关闭后,所有审计日志都会被立即删除,不可恢复,请您谨慎操作。

配置lts审计日志

  • 如需配置lts审计日志,请联系客服申请权限。
  • 访问日志提供了实例所请求的所有详细日志,日志存在lts云日志服务中。
  • 配置完成后不会立即生效,存在10分钟左右的时延,请知悉。
  • lts审计日志配置成功后,会产生一定费用,具体计费可参考lts的。
  • 在您进行lts审计日志配置后,会默认上传所有审计策略。
  • 同时开启sql审计和开启审计日志上传lts:
    • 开启sql审计和lts审计日志开关都会生成审计日志,请注意审计日志中敏感信息没有进行脱敏处理。
    • 已开启sql审计开关,此时再开启lts审计日志,审计日志将延续已有的sql操作类型策略,且会在原有的审计日志计费基础上增加您lts的审计日志收费。原有的审计日志费用会在您关闭原有审计策略后终止。
    • 已开启sql审计开关,此时再开启lts审计日志,出于对实例的正常运行考虑,建议保留原有审计策略一段时间,待lts审计日志运转正常后,再关闭原有审计策略。
  • 以下场景上传到lts的审计日志记录可能会有丢失。若您的审计日志开关为打开的状态,您可以通过obs下载全量的审计日志文件。
    • 在业务量大、审计日志产生速度过快或者lts服务故障等极端情况下,有较小概率会丢失部分日志记录。
    • 当前上传lts的单条审计日志记录上限为512kb,超过的部分会被截断。
  1. 单击管理控制台左上角的,选择区域和项目。
  2. 单击页面左上角的,选择“数据库 > 云数据库 rds”,进入rds信息页面。
  3. 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页签。
  4. 在左侧导航栏单击“sql审计”
  5. 单击,配置日志记录上传lts。
  6. 在下拉框分别选择lts日志组和日志流,单击“确定”。
    图2 lts审计日志配置

相关文档

网站地图