| From: | "Dan Wilson" <phpPgAdmin(at)acucore(dot)com> |
|---|---|
| To: | "David Wheeler" <david(at)wheeler(dot)net>, <pgsql-general(at)postgresql(dot)org> |
| Subject: | Re: Grant on Database? |
| Date: | 2001-02-21 08:31:05 |
| Message-ID: | 005e01c09be0$a758d410$078353d8@danwilson |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
> Hey All,
>
> We have a need to grant privileges on entire databases to users and/or
> groups. It looks like GRANT just grants on tables and sequences, but I'd
> like to know if there's a more direct way to do it. What I'm doing now
> is getting a list of tables and sequences and calling grant for each one
> in turn. How am I getting this list (I'm user Perl, not psql)? With this
> query:
>
> SELECT relname
> FROM pg_class
> WHERE relkind IN ('r', 'S')
> AND relowner IN (
> SELECT usesysid
> FROM pg_user
> WHERE LOWER(usename) = 'myuser')
>
> Anyway, pointers to any shortcuts for this would be greatly appreciated.
First pointer, phpPgAdmin (http://www.greatbridge.org/project/phppgadmin)
has this built into it. It will automatically get the list of tables,
sequences and views and run a grant statment on them.
Second pointer. GRANT will take multiple "relations" seperated by commas:
GRANT ALL ON table1, table1, seq1, seq2, view1, view2 TO my_user;
-Dan
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Frank Joerdens | 2001-02-21 08:38:15 | Re: two tables - foreign keys referring to each other... |
| Previous Message | Stephan Szabo | 2001-02-21 07:44:15 | Re: Weird indices |