PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Разрешаване само на роли в потребителския списък на postgres

Можете да отмените достъпа до таблицата с идентификатори за удостоверяване в системните каталози:

REVOKE SELECT ON pg_catalog.pg_authid FROM public;
REVOKE SELECT ON pg_catalog.pg_auth_members FROM public;

Обърнете внимание, че отнемането на достъп до pg_roles не е достатъчно, тъй като pg_roles е само изглед върху pg_authid и е тривиално да изпълните заявката за изглед ръчно или да дефинирате нов изглед със същата заявка. information_schema изгледите също използват pg_authid директно и не са засегнати от отнемане на достъп до pg_roles . Не е необходимо да отмените достъпа до pg_roles ако сте отменили достъпа до pg_authid .

Имайте предвид, че отнемането на достъп до глобални таблици все още е операция за база данни.

Отмяната на достъпа до системните каталози може да има странични ефекти, включително:

  • Някои системни функции не работят според очакванията
  • Някои операции с метаданни в инструменти като JDBC драйвера са неуспешни
  • ... и т.н.

и обикновено не се счита за поддържан.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Динамично добавяне на колона с множество стойности към всяка таблица с помощта на PL/pgSQL функция

  2. Грешка в Pycharm:Неправилно конфигуриран

  3. ON DELETE SET NULL в postgres

  4. python добавя E към низ

  5. Python:Извличане на резултати от заявка на PostgreSQL като форматирани JSON стойности