Re: Grant select for all tables of the 12 schemas of my one db ?

From: hubert depesz lubaczewski <depesz(at)depesz(dot)com>
To: Vijaykumar Jain <vijaykumarjain(dot)github(at)gmail(dot)com>
Cc: celati Laurent <laurent(dot)celati(at)gmail(dot)com>, pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Grant select for all tables of the 12 schemas of my one db ?
Date: 2021-10-13 11:00:16
Message-ID: 20211013110015.GA11950@depesz.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Oct 13, 2021 at 03:33:20PM +0530, Vijaykumar Jain wrote:
> something like this ?

Like, but not exactly.

Consider what will happen if you have schema named "whatever something
else" - with spaces in it. Or "badlyNamedSchema".

Generally you'd want to use:

execute format('GRANT USAGE ON SCHEMA %I TO readonlyuser_role', sch);

and it will take care of it.

> also,
> in case you like, I have kind of liked this
> you can try running meta commands using psql -E to get the query that you
> would like to run for DO block.

while in psql, you can simply:
select format() ... from ...;
make sure that it returns list of correct sql queries, with no mistakes,
and with ; at the end of each command, and then rerun it like:
select format() ... from ... \gexec

depesz

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Vijaykumar Jain 2021-10-13 11:14:07 Re: Grant select for all tables of the 12 schemas of my one db ?
Previous Message Vijaykumar Jain 2021-10-13 10:03:20 Re: Grant select for all tables of the 12 schemas of my one db ?