You can do a bit on the PostgreSQL side:
, role2 , role1, :
GRANT role1 TO role2;
/, PostgreSQL 9.0 , PostgreSQL :
ALTER DEFAULT PRIVILEGES , , . ( , .) ( ), , .
. :
ALTER DEFAULT PRIVILEGES FOR ROLE role1 GRANT SELECT ON TABLES TO role2;
, , - ( GROUP) - role0 . DEFAULT PRIVILEGES , (, , ).
GRANT role0 .
:
ALTER DEFAULT PRIVILEGES FOR ROLE role1 GRANT SELECT ON TABLES TO role0;
ALTER DEFAULT PRIVILEGES FOR ROLE role2 GRANT SELECT ON TABLES TO role0;
...
GRANT role0 TO role1;
GRANT role0 TO role2;
GRANT , .
, .
DML . ALTER TABLE:
, ALTER TABLE.
, , . , , role0, role1 role2 ALTER TABLE. :
ALTER TABLE tbl OWNER TO user0;
.
CREATE:
SET ROLE user0;
CREATE ...;
CREATE ...;
RESET ROLE;
, :
SELECT current_user, session_user;