sql >> Base de Datos >  >> RDS >> PostgreSQL

PostgreSQL revocación de permisos de tablas pg_catalog

déjame ayudarte con esto:

  • :porque el pg_catalog es propiedad del superusuario postgres , así que asegúrese de iniciar sesión en el servidor con este rol:permiso de esquema pg_catalog

  • 2do :asegúrese de conectarse a la derecha base de datos que necesita GRANT/REVOKE permisos de. GRANT/REVOKE solo afecta al actual base de datos a la que se conectó. Eso significa que después de iniciar sesión con la cuenta de superusuario, emita:\c [the db] para conectarse a esa base de datos, el shell cambiará a:[the db]=>

  • 3ro :tablas en pg_catalog valores predeterminados otorgados SELECCIONAR a PÚBLICO:tablas en pg_catalog. Entonces, debe ejecutar REVOKE SELECT FROM PUBLIC y luego GRANT SELECT a los usuarios apropiados:

    REVOCAR SELECCIÓN EN TODAS LAS TABLAS EN ESQUEMA pg_catalog DESDE PÚBLICO;

    OTORGAR SELECCIÓN EN LA TABLA [tabla] A [usuario];

    Para listas de tablas en una base de datos:pg_class y pg_espacio de nombres .

Y eso es todo :)