Στις 8/4/23 15:58, ο/η jian he έγραψε:

Hi.
--work as intended.
grant ALL PRIVILEGES on FUNCTION pg_catalog.pg_reload_conf() to test;
grant ALL PRIVILEGES on FUNCTION pg_reload_conf() to test;

-------------errors. it should be work, or I interpret the doc the wrong way? GRANT ALL PRIVILEGES ON FUNCTION pg_reload_conf() IN SCHEMA pg_catalog TO test; GRANT ALL PRIVILEGES ON FUNCTION pg_catalog.pg_reload_conf() IN SCHEMA pg_catalog TO test;

doc: https://www.postgresql.org/docs/current/sql-grant.html
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
     ON { { FUNCTION | PROCEDURE | ROUTINE }/|routine_name|/  [ ( [ 
[/|argmode|/  ] [/|arg_name|/  ]/|arg_type|/  [, ...] ] ) ] [, ...]
          | ALL { FUNCTIONS | PROCEDURES | ROUTINES } IN SCHEMA/|schema_name|/  
[, ...] }
     TO/|role_specification|/  [, ...] [ WITH GRANT OPTION ]
     [ GRANTED BY/|role_specification|/  ]
I am using postgres 16, but the grant function part does not change.
What did I miss?

Hello, You missed the docs. The "IN SCHEMA" version always goes with ALL FUNCTIONS in the beginning. What would be the point specifying pg_catalog.pg_reload_conf() IN SCHEMA pg_catalog, i.e. giving the SCHEMA twice ?

--
Achilleas Mantzios
 IT DEV - HEAD
 IT DEPT
 Dynacom Tankers Mgmt

Reply via email to