修改search_path导致的审计与安全函数不可用

文章目录

环境

系统平台:N/A

版本:4.3.4.6

症状

使用 set_secure_param 等函数时报错该函数不存在:

sql 复制代码
highgo=> select set_secure_param('hg_ShowLoginInfo','off');
xml 复制代码
错误:  函数 set_secure_param(unknown, unknown) 不存在

LINE 1: select set_secure_param('hg_ShowLoginInfo','off');

               ^

HINT:  没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换.

highgo=> select show_secure_param();

错误:  函数 show_secure_param() 不存在

LINE 1: select show_secure_param();

               ^

HINT:  没有匹配指定名称和参数类型的函数. 您也许需要增加明确的类型转换.

问题原因

search_path参数被修改,public选项被删除。

sql 复制代码
[root@localhost data]# psql -U syssso  -d highgo

Password for user syssso:

注意:

-------------------------------------------

Login User: syssso

Login time: 2019-11-28 10:25:00.636237+08

Login Address: [local]

Last Login Status: SUCCESS

Login Failures: 0

Valied Until: infinity

-------------------------------------------



psql (4.3.4.6)

Type "help" for help.



highgo=> show search_path;

search_path

-------------

"$user"

(1 row)

解决方案

修改search_path,添加public如下:

sql 复制代码
search_path = '"$user",public'  

[root@localhost data]# psql -U syssso  -d highgo

Password for user syssso:

注意:

-------------------------------------------

Login User: syssso

Login time: 2019-11-28 10:24:08.47413+08

Login Address: [local]

Last Login Status: FAILED

Login Failures: 1

Valied Until: infinity

-------------------------------------------



psql (4.3.4.6)

Type "help" for help.



highgo=> select show_secure_param();

      show_secure_param

-----------------------------

Secure level = table,      +

   hg_SepOfPowers = on,     +

   hg_MAControl = on,       +

   hg_RowSecure = off,      +

hg_PwdValidUntil = 5,      +

hg_PwdErrorLock = 5,       +

hg_ShowLoginInfo = on,     +

hg_ClientNoInput = 30 min, +

hg_PwdRule = on,           +

(1 row)



highgo=> select set_secure_param('hg_ShowLoginInfo','off');

        set_secure_param

---------------------------------

set configuration successfully.

(1 row)

至此可正常使用审计与安全相关操作函数。

相关推荐
瀚高PG实验室1 小时前
逻辑导入导出(pg_dump/pg_restore)用法2-导入到不同的schema或tablespace
数据库·瀚高数据库
瀚高PG实验室5 天前
无法连接到服务器:连接被拒绝
运维·服务器·瀚高数据库
瀚高PG实验室9 天前
简单方便的获取所有表的条数
瀚高数据库
瀚高PG实验室10 天前
highgo DB中数据库对象,模式,用户,权限之间的关系
数据库·瀚高数据库
瀚高PG实验室10 天前
HIGHGODB内部MVCC机制简介
瀚高数据库
瀚高PG实验室14 天前
Tomcat 后台日志不断刷新应用系统重新连接HGDB的警告信息
数据库·瀚高数据库
瀚高PG实验室18 天前
在Highgo DB 中创建MySQL兼容函数datediff
数据库·mysql·瀚高数据库
瀚高PG实验室24 天前
timestampdiff (MYSQL)函数在Highgo DB中的写法
数据库·mysql·瀚高数据库
瀚高PG实验室24 天前
拼接符“II”在Oracle和HGDB中使用的差异
数据库·oracle·瀚高数据库