为审计环境(如 SOX)配置 MySQL 日志记录

为审计环境(如 SOX)配置 MySQL 日志记录

如何配置 MySQL 用户和日志以满足 SOX 审计员的要求?

例如,如果您需要记录查询和查询来源以供内部 SOX 控制组稍后审查。

有没有一种简单的方法来区分应用程序生成的查询和“直接登录数据库”的(潜在恶意)用户生成的查询?

您是否发现任何有用的第三方工具或脚本?

答案1

配置

  • 将应用程序用户与手动人类用户分开
  • 为每个应用程序使用单独的用户
  • 将所有用户可以连接的主机列入白名单,直至达到必要的最低限度。应用程序用户应仅从该应用程序的服务器进行连接。手动用户应仅从一组有限的服务器(非应用程序服务器)进行连接。
  • 将所有用户的权限限制到所需的最低限度,直至表级别
  • 启用 MySQL 通用查询日志。
    • 这可能会对性能产生影响。如果您已经在进行复制,则二进制日志已包含所有修改数据的查询,这可能就足够了(但不确定二进制日志是否包含源 IP 地址/用户)。
    • 如果您处于 PCI 环境中,查询日志需要位于加密卷或加密表中。请注意,传递给 mysql 加密函数的纯文本将作为查询的一部分记录!

工具

  • Lumigent 审计数据库
  • SoftTree DB 审计

链接

相关内容