Re: where table privileges are stored

From: Stephen Frost <sfrost(at)snowman(dot)net>
To: "Markova, Nina" <Nina(dot)Markova(at)NRCan-RNCan(dot)gc(dot)ca>
Cc: "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: where table privileges are stored
Date: 2015-05-07 15:07:26
Message-ID: 20150507150725.GB30322@tamriel.snowman.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Nina,

* Markova, Nina (Nina(dot)Markova(at)NRCan-RNCan(dot)gc(dot)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.

Thanks!

Stephen

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Markova, Nina 2015-05-07 15:11:46 Re: where table privileges are stored
Previous Message Markova, Nina 2015-05-07 14:53:33 where table privileges are stored