Let's say we have this function:

 

CREATE OR REPLACE FUNCTION public.test(in_value character varying) RETURNS
character varying

LANGUAGE 'plpgsql' COST 100.0 VOLATILE LEAKPROOF SECURITY DEFINER

AS $$

BEGIN

    RETURN in_value;

END;

$$;

 

ALTER FUNCTION public.test(character varying) OWNER TO user_group_1;

 

REVOKE ALL PRIVILEGES ON FUNCTION public.test(character varying) FROM
public;

GRANT EXECUTE ON FUNCTION public.test(character varying) TO user_group_2;

 

Now let's see it with pgAdmin 3:

 

...

 

GRANT EXECUTE ON FUNCTION public.test(character varying) TO user_group_1;

GRANT EXECUTE ON FUNCTION public.test(character varying) TO user_group_2;

REVOKE ALL ON FUNCTION public.test(character varying) FROM public;

 

And now with pgAdmin 4:

 

...

 

GRANT EXECUTE ON FUNCTION public.test(character varying) TO user_group_1;

 

GRANT EXECUTE ON FUNCTION public.test(character varying) TO user_group_2;

 

 

Like you can see the revoke of public access is not included in pgAdmin 4 in
SQL tab.

 

It would be nice to have the whole list of privileges changes there. Because
for example when I copy the code and execute it on another database, then
everyone has access to it!

 

 

pgAdmin 4 v1.5

Desktop Runtime

Windows 10 x64 1511

PostgreSQL 9.6.3

Reply via email to