Re: 8.1 removed functions

Поиск
Список
Период
Сортировка
От nielsgron@gmail.com
Тема Re: 8.1 removed functions
Дата
Msg-id 1135820087.586504.32950@f14g2000cwb.googlegroups.com
обсуждение исходный текст
Ответ на 8.1 removed functions  (Андрей <andyk@softwarium.net>)
Ответы Re: 8.1 removed functions  (Michael Fuhr <mike@fuhr.org>)
Список pgsql-general
Hi Tom,

With PG 8.0 I was using a query using makeaclitem() and aclcontains()
to extract permissions.  Here is a sample query for database
permissions ...

SELECT
    ((grantee.name)::character varying)    AS grantee,
    ((nc.datname)::character varying)     AS database,
    (pr."type")                        AS privilege_type,
    (
    CASE
        WHEN aclcontains(nc.datacl, makeaclitem(grantee.usesysid,
grantee.grosysid, u_grantor.usesysid, pr."type", true))
        THEN 'YES'::text
        ELSE 'NO'::text
    END)                                                AS is_grantable,
    ('NO')                              AS with_hierarchy
FROM
    pg_database nc,
    pg_user u_grantor,
    (((((    SELECT pg_user.usesysid, 0, pg_user.usename  FROM pg_user )
          UNION ALL
         ( SELECT 0, pg_group.grosysid, pg_group.groname  FROM pg_group
          )
    )) UNION ALL (    SELECT 0, 0, 'PUBLIC' ) )) grantee(usesysid, grosysid,
name),
    (((((    SELECT 'CREATE' ) UNION ALL (    SELECT 'TEMP' ) )) UNION ALL (
SELECT 'USAGE' ) )) pr("type")
WHERE
    aclcontains(nc.datacl, makeaclitem(grantee.usesysid, grantee.grosysid,
u_grantor.usesysid, pr."type", false))
    AND (grantee.name = 'postgres'::name)


What is the recommended manner to extract object permissions for 8.1
now that these functions are not available?

regards,
-Niels


В списке pgsql-general по дате отправления:

Предыдущее
От: "Magnus Hagander"
Дата:
Сообщение: Re: windows xp install problem ("failed to set permissions on the installed files...")
Следующее
От: dhilchrist@gmail.com
Дата:
Сообщение: Check If PostgreSQL Table Exists