Re: where table privileges are stored

Поиск
Список
Период
Сортировка
Искать
От
Matheus de Oliveira
Тема
Re: where table privileges are stored
Дата
в 15:53:52
Msg-id
CAJghg4+refUOijWZL-4agOavVVQAaJ2LH+HhGOdbm8L6ORUmtQ@mail.gmail.com
Ответ на
Список
Дерево обсуждения
where table privileges are stored "Markova, Nina" <Nina.Markova@NRCan-RNCan.gc.ca>
Re: where table privileges are stored Stephen Frost <sfrost@snowman.net>
Re: where table privileges are stored Matheus de Oliveira <matioli.matheus@gmail.com>
Re: where table privileges are stored "Markova, Nina" <Nina.Markova@NRCan-RNCan.gc.ca>

On Thu, May 7, 2015 at 12:07 PM, Stephen Frost <sfrost@snowman.net> wrote:
* Markova, Nina (Nina.Markova@NRCan-RNCan.gc.ca) wrote:
> I need to check in a GUI if a user has certain privileges on the table he is trying to modify - insert/update/delete.

You probably want to use the "has_table_privilege" family of functions.

Look here: http://www.postgresql.org/docs/9.4/static/functions-info.html

> Something I could query system catalogs about:
>   Select  ...  from ... where table_name  = 'MYTABLE';
>
> Does Postgres store user privileges on tables in format similar to the one below, I mean the info below to be stored as a text field somewhere?
>    grant delete on MYTABLE  to myuser
>    grant insert on  MYTABLE  to myuser

Privileges are stored in the catalog tables but not is a terribly useful
format for querying, which is why the helper functions exist.  If you
want to look at it though, look at pg_class.relacl.

Another option for tables, is querying information_schema.table_privileges. There are other views for privileges:

 * information_schema.column_privileges
 * information_schema.routine_privileges
 * information_schema.table_privileges
 * information_schema.udt_privileges
 * information_schema.usage_privileges
 * information_schema.data_type_privileges

But I don't think they supply information about all possible objects/privileges available in the system.

Regards,
--
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres

В списке pgsql-admin по дате отправления
От: Markova, Nina
Дата:
От: Ravi Krishna
Дата:
FAQ