Hi, On Mon, Sep 16, 2024 at 8:31 PM Tom Lane <t...@sss.pgh.pa.us> wrote:
> Alvaro Herrera <alvhe...@alvh.no-ip.org> writes: > > On 2024-Sep-16, Jim Jones wrote: > >> * The value of "Current User" does not match the function current_user() > >> --- as one might expcect. It is a little confusing, as there is no > >> mention of "Current User" in the docs. In case this is the intended > >> behaviour, could you please add it to the docs? > > > It is intended. As Peter said[1], what we wanted was to display > > client-side info, so PQuser() is the right thing to do. Now maybe > > "Current User" is not the perfect column header, but at least the > > definition seems consistent with the desired end result. > > Seems like "Session User" would be closer to being accurate, since > PQuser()'s result does not change when you do SET ROLE etc. > > > Now, I think > > the current docs saying to look at session_user() are wrong, they should > > point to the libpq docs for the function instead; something like "The > > name of the current user, as returned by PQuser()" and so on. > > Sure, but this does not excuse choosing a misleading column name > when there are better choices readily available. > Maybe we can rename "Current User" to "Authenticated User" just like the previous author because it is a user returned by PQuser(). For the "Session User", I believe it is working as expected, since session_user can be changed with SET SESSION AUTHORIZATION. ``` $ bin/psql "port=5430 sslmode=disable dbname=postgres" -x -h localhost postgres=# \conninfo+ Connection Information -[ RECORD 1 ]--------+---------- Database | postgres Current User | hunaid Session User | hunaid Host | localhost Host Address | 127.0.0.1 Port | 5430 Protocol Version | 3 SSL Connection | false GSSAPI Authenticated | false Client Encoding | UTF8 Server Encoding | UTF8 Backend PID | 1337 postgres=# set SESSION AUTHORIZATION postgres; SET postgres=# \conninfo+ Connection Information -[ RECORD 1 ]--------+---------- Database | postgres Current User | hunaid Session User | postgres Host | localhost Host Address | 127.0.0.1 Port | 5430 Protocol Version | 3 SSL Connection | false GSSAPI Authenticated | false Client Encoding | UTF8 Server Encoding | UTF8 Backend PID | 1337 ``` We can update the docs as follows: Authenticated User: The name of the user returned by PQuser(). Session User: The session user's name. Opinions? Regards, Hunaid Sohail