Как разобрать объект acl базы данных в красное смещение - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть одно требование, когда я хочу ограничить пользователя перечислять все базы данных Для этого я пришел с ACL базы данных из pg_catalog.pg_database таблицы в красном смещении. Теперь, как разобрать этот datacl из запроса. Я пробовал что-то вроде этого:

select oid::regclass,
   (aclexplode(relacl)).grantor,
   (aclexplode(relacl)).grantee,
   (aclexplode(relacl)).privilege_type,
   (aclexplode(relacl)).is_grantable
from pg_class
where relacl is not null;

Этот запрос выполняется в Postgres, но не в красном смещении. Это говорит, что функция aclexplode не найдена.

1) Как этого добиться с помощью запроса?

(я хочу из ACL что-то вроде database_name, grantee, grantor, privilege, is_grantable)

(так как ACL может быть = T / james, singh = CT / james, joe_lebers = CT / james)

2) Есть ли альтернативный способ сделать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...