GetUserId() changes to has_privs_of_role()
The pg_stat and pg_signal-related functions have been using GetUserId()
instead of has_privs_of_role() for checking if the current user should
be able to see details in pg_stat_activity or signal other processes,
requiring a user to do 'SET ROLE' for inheirited roles for a permissions
check, unlike other permissions checks.
This patch changes that behavior to, instead, act like most other
permission checks and use has_privs_of_role(), removing the 'SET ROLE'
need. Documentation and error messages updated accordingly.
Per discussion with Alvaro, Peter, Adam (though not using Adam's patch),
and Robert.
Reviewed by Jeevan Chalke.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/bf038899965263dbc4aef2b43c8fdfe6f49b788f
Modified Files
--------------
doc/src/sgml/func.sgml | 13 ++++++------
src/backend/utils/adt/misc.c | 39 ++++++++++++++++++++++++++++-------
src/backend/utils/adt/pgstatfuncs.c | 19 +++++++++--------
3 files changed, 47 insertions(+), 24 deletions(-)