First step done,
below is the patch to have views to override the permission checks for the accessed tables. Now we can do the following: CREATE VIEW db_user AS SELECT usename, usesysid, usecreatedb, usetrace, usecatupd, '**********'::text as passwd, valuntil FROM pg_user; REVOKE ALL ON pg_user FROM public; REVOKE ALL ON db_user FROM public; GRANT SELECT ON db_user TO public;
Showing
- src/backend/executor/execMain.c 12 additions, 1 deletionsrc/backend/executor/execMain.c
- src/backend/nodes/copyfuncs.c 2 additions, 1 deletionsrc/backend/nodes/copyfuncs.c
- src/backend/parser/gram.c 4 additions, 4 deletionssrc/backend/parser/gram.c
- src/backend/parser/scan.c 2 additions, 2 deletionssrc/backend/parser/scan.c
- src/backend/rewrite/rewriteHandler.c 104 additions, 6 deletionssrc/backend/rewrite/rewriteHandler.c
- src/include/nodes/parsenodes.h 2 additions, 1 deletionsrc/include/nodes/parsenodes.h
- src/interfaces/ecpg/Makefile 0 additions, 2 deletionssrc/interfaces/ecpg/Makefile
Loading
Please register or sign in to comment