Puede revocar el acceso a la tabla de ID de autenticación en los catálogos del sistema:
REVOKE SELECT ON pg_catalog.pg_authid FROM public;
REVOKE SELECT ON pg_catalog.pg_auth_members FROM public;
Tenga en cuenta que revocar el acceso a pg_roles
no es suficiente, ya que pg_roles
es solo una vista sobre pg_authid
y es trivial ejecutar la consulta de vista manualmente o definir una nueva vista con la misma consulta. El information_schema
las vistas también usan pg_authid
directamente y no se ven afectados al revocar el acceso a pg_roles
. No es necesario revocar el acceso a pg_roles
si ha revocado el acceso a pg_authid
.
Tenga en cuenta que revocar el acceso a las tablas globales sigue siendo una operación por base de datos.
Revocar el acceso a los catálogos del sistema puede tener efectos secundarios, que incluyen:
- Algunas funciones del sistema no funcionan como se esperaba
- Algunas operaciones de metadatos en herramientas como el controlador JDBC fallan
- ... etc.
y generalmente no se considera compatible.