Re: grant select on all tables

From: Sean Davis <sdavis2(at)mail(dot)nih(dot)gov>
To: Andrew Borley <BORLEY(at)uk(dot)ibm(dot)com>, <pgsql-novice(at)postgresql(dot)org>
Subject: Re: grant select on all tables
Date: 2005-10-04 12:25:44
Message-ID: BF67ED08.FC4C%sdavis2@mail.nih.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

On 10/4/05 6:56 AM, "Andrew Borley" <BORLEY(at)uk(dot)ibm(dot)com> wrote:

> Hi,
>
> I need to have default privileges like "GRANT SELECT ON
> ALL TABLES" for a particular user. Looking at the docs &
> mailing list archives there's no easy way to do this. I
> seem to have to run a grant statement every time a new
> table is created, so I thought of running the grant
> automatically as a trigger on the pg_tables table.
>
> I got as far as creating a function to help me do the
> grant part:
>
> create or replace function grantAccess(text, text)
> returns text as '
> DECLARE grantStmt text;
> BEGIN
> grantStmt := \'grant select on \'||$1||\' to \'||$2;
> EXECUTE grantStmt;
> RETURN grantStmt;
> END;'
> language plpgsql returns null on null input;
>
> I wanted to run the function in a trigger on the
> pg_tables table, but I can't cos it's a view. So I tried
> setting it on the pg_class table, but I can't do this as
> it's a system catalog.
>
> Can anyone help?
> Can anyone see a better/easier way of doing it?

Try looking at:

http://pgedit.com/node/20

for some ideas.

Sean

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Andrew Borley 2005-10-04 15:00:38 Re: grant select on all tables
Previous Message Andrew Borley 2005-10-04 10:56:54 grant select on all tables