8.5 MySQL 安全标准规则

以下是 MySQL 安全标准合规性规则:

排除的审计日志帐户

说明企业审计日志插件正在按帐户来源过滤事件

严重警告

建议当使用选项 audit_log_include_accounts 或 audit_log_exclude_accounts 时,插件可能不会记录以后分析可能需要的所有事件。考虑是否需要按帐户过滤事件,如果不需要,则删除 audit_log_exclude_accounts 或 audit_log_include_accounts 的配置值。

审计日志策略不是全部

说明Enterprise Audit Log Plugin 正在按事件状态过滤事件

严重警告

建议使用这些选项时,插件可能不会记录以后分析可能需要的所有事件。考虑是否需要按状态过滤事件,如果不需要,则删除 audit_log_connection_policy 或 audit_log_statement_policy 的配置值。

防火墙已禁用

说明MySQL Enterprise Firewall 在安装、启用或禁用后可以处于两种全局模式之一。

严重警告

建议要启用或禁用防火墙,请设置 mysql_firewall_mode 系统变量。默认情况下,安装防火墙时会启用此变量。要显式控制初始防火墙状态,您可以在服务器启动时设置变量。

启用 LOAD DATA 语句的 LOCAL 选项

描述LOAD DATA 语句可以加载位于服务器主机上的文件,也可以在指定 LOCAL 关键字时加载位于客户端主机上的文件。支持本地版本的 LOAD DATA 语句有两个潜在的安全问题: 文件从客户端主机到服务器主机的传输是由 MySQL 服务器启动的。理论上,可以构建一个补丁服务器,告诉客户端程序传输服务器选择的文件,而不是客户端在 LOAD DATA 语句中指定的文件。这样的服务器可以访问客户端用户具有读取权限的客户端主机上的任何文件。在客户端从单独的 Web 服务器连接的 Web 环境中,用户可以使用 LOAD DATA LOCAL 来读取 Web 服务器进程具有读取权限的任何文件(假设用户可以针对 SQL 服务器运行任何语句)。在这种环境下,MySQL服务器的客户端实际上是Web服务器,而不是连接到Web服务器的用户正在运行的远程程序。

严重警告

建议在禁用 --local-infile 选项(--local-infile=0)的情况下启动 MySQL 服务器,或将“local-infile = 0”添加到您的 my.cnf/my.ini 文件中。

符号链接已启用

说明您可以将表和数据库从数据库目录移动到其他位置,并用指向新位置的符号链接替换它们。例如,您可能想要这样做,以将数据库移动到具有更多可用空间的文件系统或通过将表分布到不同磁盘来提高系统速度。但是,符号链接可能会危及安全性。如果您以 root 身份运行 mysqld,这一点尤为重要,因为任何对服务器数据目录具有写权限的人都可以删除系统中的任何文件!

严重警告

建议通过使用 --skip-symbolic-links 选项启动 MySQL 或将 skip-symbolic-links 添加到 my.cnf/my.ini 文件并重新启动服务器来禁用符号链接的使用。