views:

32

answers:

1

I found out how to deny all access to tables for user in a schema.

REVOKE ALL PRIVILEGES ON SCHEMA test FROM user;

But what can i do to restrict access to all functions in a schema, so that user couldn't read the code?

I was trying this:

REVOKE ALL ON FUNCTION test.test_function(text) FROM user;

Yes, it has restricted the ability to change a function, but not to actually see it.

What have i missed?

+1  A: 

REVOKE access to the system view pg_proc or at least the column prosrc that hase the source code for the function.

Frank Heikens
i'm using here: REVOKE ALL PRIVILEGES ON TABLE pg_catalog.pg_proc FROM user; But it's not working... the user still can see the table.
MindLezz
Did you also REVOKE public access? Your user is also "public": REVOKE SELECT ON TABLE pg_proc FROM public;
Frank Heikens
Thanks Frank! It's working ;)
MindLezz