Re: prevent users from SELECT-ing from pg_roles/pg_database

Andreas Joseph Krogh <andreas@visena.com>

From: Andreas Joseph Krogh <andreas@visena.com>
To: Laurenz Albe <laurenz.albe@cybertec.at>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-general@lists.postgresql.org
Date: 2024-05-27T09:33:30Z
Lists: pgsql-general

På mandag 27. mai 2024 kl. 11:10:10, skrev Laurenz Albe <
laurenz.albe@cybertec.at <mailto:laurenz.albe@cybertec.at>>:
On Mon, 2024-05-27 at 09:33 +0200, Andreas Joseph Krogh wrote:
> I tried:
>
> REVOKE SELECT ON pg_catalog.pg_database FROM public;
>
> But that doesn't prevent a normal user from querying pg_database it seems…

It works here.

Perhaps the "normal" user is a member of "pg_read_all_data".

Yours,
Laurenz Albe


Don't think so:
andreak@[local]:5432 16.3 andreak=# REVOKE pg_read_all_data from nisse; 
WARNING: role "nisse" has not been granted membership in role 
"pg_read_all_data" by role "postgres" REVOKE ROLE


Any hints welcome.






--
Andreas Joseph Krogh
CTO / Partner - Visena AS
Mobile: +47 909 56 963
andreas@visena.com <mailto:andreas@visena.com>
www.visena.com <https://www.visena.com>
 <https://www.visena.com>