From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | sekhar chandra <sekharclouddbengineer(at)gmail(dot)com> |
Cc: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Fwd: not able to give usage access to public schema |
Date: | 2020-06-14 02:15:56 |
Message-ID: | 989793.1592100956@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
sekhar chandra <sekharclouddbengineer(at)gmail(dot)com> writes:
> Adrian - when I follow the same steps what you did . in my case , the
> result is false.
> grant usage on schema public to role_test ;
> GRANT
> SELECT rolname, has_schema_privilege('role_test', 'public', 'usage')
> from pg_roles where rolname = 'role_test';
> rolname | has_schema_privilege
> -----------+----------------------
> role_test | f
This is verging on impossible to believe. To start with, in a standard
installation rights on the public schema are granted to PUBLIC, so that
any role should *already* have usage privilege as soon as it's created.
Thus:
regression=# create user role_test;
CREATE ROLE
regression=# select has_schema_privilege('role_test', 'public', 'usage');
has_schema_privilege
----------------------
t
(1 row)
Even if you'd revoked that public grant, manually granting should
certainly have worked. So my thoughts are running towards maybe
you have created a nonstandard version of has_schema_privilege()
that doesn't do what you think.
Anyway, I'd suggest removing some variables from the equation by
looking directly at the catalog:
postgres=# table pg_namespace;
oid | nspname | nspowner | nspacl
-------+--------------------+----------+-------------------------------------
...
2200 | public | 10 | {postgres=UC/postgres,=UC/postgres}
...
That's what I get in a default installation. If I manually GRANT, it
changes to
2200 | public | 10 | {postgres=UC/postgres,=UC/postgres,role_test=U/postgres}
What do you see?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2020-06-14 02:28:24 | Re: Fwd: not able to give usage access to public schema |
Previous Message | Bruce Momjian | 2020-06-14 01:27:25 | Re: Oracle vs. PostgreSQL - a comment |