Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PostgreSQL,如何限制用户对函数中代码的访问?_Postgresql_Roles_Privileges_Rights - Fatal编程技术网

PostgreSQL,如何限制用户对函数中代码的访问?

PostgreSQL,如何限制用户对函数中代码的访问?,postgresql,roles,privileges,rights,Postgresql,Roles,Privileges,Rights,我发现了如何在模式中拒绝用户对表的所有访问 REVOKE ALL PRIVILEGES ON SCHEMA test FROM user; 但是我可以做些什么来限制对模式中所有函数的访问,这样用户就无法读取代码了 我试着这样做: REVOKE ALL ON FUNCTION test.test_function(text) FROM user; 是的,它限制了更改函数的能力,但不能实际查看它 我错过了什么?撤销对系统视图或至少是包含函数源代码的列的访问权。我在这里使用的是:撤销用户对表pg_

我发现了如何在模式中拒绝用户对表的所有访问

REVOKE ALL PRIVILEGES ON SCHEMA test FROM user;
但是我可以做些什么来限制对模式中所有函数的访问,这样用户就无法读取代码了

我试着这样做:

REVOKE ALL ON FUNCTION test.test_function(text) FROM user;
是的,它限制了更改函数的能力,但不能实际查看它


我错过了什么?

撤销对系统视图或至少是包含函数源代码的列的访问权。

我在这里使用的是:撤销用户对表pg_catalog.pg_proc的所有权限;但它不起作用。。。用户仍然可以看到该表。您是否也撤消了公共访问权限?您的用户也是“public”:从public撤销对表pg_proc的选择;我可以只撤销一个特定的函数吗?