其它配置

确保backslash_quote参数配置正确

说明

参数backslash_quote控制字符串中是否允许使用\'来替代引号。由于历史原因,PostgreSQL接受“'”的写法,但这种用法可能引发安全风险,如SQL注入攻击。为了避免这种风险,建议配置服务器拒绝带反斜杠转义的引号的查询。推荐使用SQL标准方法,使用一个引号写两遍('')的方法。

实现

检查方法:

检查backslash_quote参数值,如果不为safe_encodingoff则失败。

openGauss=# show backslash_quote;
 backslash_quote
-----------------
safe_encoding
(1 row)

修复方法:

修改参数backslash_quotesafe_encodingoff

gs_guc reload -Z datanode -N all -I all -c "backslash_quote=safe_encoding"

禁止修改系统表结构

说明

参数allow_system_table_mods控制是否允许修改系统表的结构。虽然在某些极端情况下,此参数可以帮助恢复受损的数据库,但在生产环境中,修改系统表结构可能会带来严重的安全风险,包括数据丢失和系统不稳定。因此,在生产环境中,应将allow_system_table_mods参数设置为off

实现

检查方法:

检查allow_system_table_mods参数值是否为off,如果不为off则失败。

openGauss=# show allow_system_table_mods;
 allow_system_table_mods
-------------------------
off
(1 row)

修复方法:

设置参数allow_system_table_modsoff,然后重启数据库。设置命令如下:

gs_guc set -Z datanode -N all -I all -c "allow_system_table_mods=off"
gs_om -t stop && gs_om -t start
意见反馈
编组 3备份
    openGauss 2024-12-02 00:55:14
    取消