Thread: A question about user atributes

A question about user atributes

From
stan
Date:
I am trting to do something, and it ias not working as I think it should.

Consider:

onnected to a database called stan as stan

/dt reports

List of relations
Schema |           Name           | Type  | Owner 
 --------+--------------------------+-------+-------
 ica    | biz_constants            | table | stan
 ica    | bom_item                 | table | stan
 ica    | costing_unit             | table | stan
 ica    | customer                 | table | stan
 ica    | employee                 | table | stan

 Connect as user postgres to database stan and execute:

 grant all ON ALL TABLES IN SCHEMA ica to harec ;

 Connect to database stan as user harec

 stan=> \dt
 Did not find any relations.
 stan=> \c
 psql (12.1 (Debian 12.1-1.pgdg100+1), server 11.6 (Debian
 11.6-1.pgdg100+1))
 You are now connected to database "stan" as user "harec".
 stan=> 

 What am I doing wrong?

-- 
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
                        -- Benjamin Franklin



Re: A question about user atributes

From
Guillaume Lelarge
Date:
Hi,

Le ven. 22 nov. 2019 à 13:51, stan <stanb@panix.com> a écrit :
I am trting to do something, and it ias not working as I think it should.

Consider:

onnected to a database called stan as stan

/dt reports

List of relations
Schema |           Name           | Type  | Owner
 --------+--------------------------+-------+-------
 ica    | biz_constants            | table | stan
 ica    | bom_item                 | table | stan
 ica    | costing_unit             | table | stan
 ica    | customer                 | table | stan
 ica    | employee                 | table | stan

 Connect as user postgres to database stan and execute:

 grant all ON ALL TABLES IN SCHEMA ica to harec ;

 Connect to database stan as user harec

 stan=> \dt
 Did not find any relations.
 stan=> \c
 psql (12.1 (Debian 12.1-1.pgdg100+1), server 11.6 (Debian
 11.6-1.pgdg100+1))
 You are now connected to database "stan" as user "harec".
 stan=>

 What am I doing wrong?


Might be a wrong search_path or maybe your harec user doesn't have USAGE right on the ica schema.


--
Guillaume.

Re: A question about user atributes

From
Guillaume Lelarge
Date:
First, please reply to the list, not me specifically.

Le ven. 22 nov. 2019 à 14:51, stan <stanb@panix.com> a écrit :
On Fri, Nov 22, 2019 at 01:58:11PM +0100, Guillaume Lelarge wrote:
> Hi,
>
> Le ven. 22 nov. 2019 ?? 13:51, stan <stanb@panix.com> a ??crit :
>
> > I am trting to do something, and it ias not working as I think it should.
> >
> > Consider:
> >
> > onnected to a database called stan as stan
> >
> > /dt reports
> >
> > List of relations
> > Schema |           Name           | Type  | Owner
> >  --------+--------------------------+-------+-------
> >  ica    | biz_constants            | table | stan
> >  ica    | bom_item                 | table | stan
> >  ica    | costing_unit             | table | stan
> >  ica    | customer                 | table | stan
> >  ica    | employee                 | table | stan
> >
> >  Connect as user postgres to database stan and execute:
> >
> >  grant all ON ALL TABLES IN SCHEMA ica to harec ;
> >
> >  Connect to database stan as user harec
> >
> >  stan=> \dt
> >  Did not find any relations.
> >  stan=> \c
> >  psql (12.1 (Debian 12.1-1.pgdg100+1), server 11.6 (Debian
> >  11.6-1.pgdg100+1))
> >  You are now connected to database "stan" as user "harec".
> >  stan=>
> >
> >  What am I doing wrong?
> >
> >
> Might be a wrong search_path or maybe your harec user doesn't have USAGE
> right on the ica schema.
>

Well,

[local] stan@stan=# \dn
  List of schemas
Name  |  Owner   
--------+----------
 ica    | stan
 public | postgres
 stan   | stan

[local] stan@stan=# grant usage on ica to harec ;
ERROR:  relation "ica" does not exist

Is this incorect syntaxe?


Yes, it is incorrect. You should tell PostgreSQL you're talking about a schema, hence:
GRANT USAGE ON SCHEMA ica TO harec;



--
Guillaume.

Re: A question about user atributes

From
stan
Date:
On Fri, Nov 22, 2019 at 03:10:42PM +0100, Guillaume Lelarge wrote:
> First, please reply to the list, not me specifically.
> 
> Le ven. 22 nov. 2019 ?? 14:51, stan <stanb@panix.com> a ??crit :
> 
> > On Fri, Nov 22, 2019 at 01:58:11PM +0100, Guillaume Lelarge wrote:
> > > Hi,
> > >
> > > Le ven. 22 nov. 2019 ?? 13:51, stan <stanb@panix.com> a ??crit :
> > >
> > > > I am trting to do something, and it ias not working as I think it
> > should.
> > > >
> > > > Consider:
> > > >
> > > > onnected to a database called stan as stan
> > > >
> > > > /dt reports
> > > >
> > > > List of relations
> > > > Schema |           Name           | Type  | Owner
> > > >  --------+--------------------------+-------+-------
> > > >  ica    | biz_constants            | table | stan
> > > >  ica    | bom_item                 | table | stan
> > > >  ica    | costing_unit             | table | stan
> > > >  ica    | customer                 | table | stan
> > > >  ica    | employee                 | table | stan
> > > >
> > > >  Connect as user postgres to database stan and execute:
> > > >
> > > >  grant all ON ALL TABLES IN SCHEMA ica to harec ;
> > > >
> > > >  Connect to database stan as user harec
> > > >
> > > >  stan=> \dt
> > > >  Did not find any relations.
> > > >  stan=> \c
> > > >  psql (12.1 (Debian 12.1-1.pgdg100+1), server 11.6 (Debian
> > > >  11.6-1.pgdg100+1))
> > > >  You are now connected to database "stan" as user "harec".
> > > >  stan=>
> > > >
> > > >  What am I doing wrong?
> > > >
> > > >
> > > Might be a wrong search_path or maybe your harec user doesn't have USAGE
> > > right on the ica schema.
> > >
> >
> > Well,
> >
> > [local] stan@stan=# \dn
> >   List of schemas
> > Name  |  Owner
> > --------+----------
> >  ica    | stan
> >  public | postgres
> >  stan   | stan
> >
> > [local] stan@stan=# grant usage on ica to harec ;
> > ERROR:  relation "ica" does not exist
> >
> > Is this incorect syntaxe?
> >
> >
> Yes, it is incorrect. You should tell PostgreSQL you're talking about a
> schema, hence:
> GRANT USAGE ON SCHEMA ica TO harec;
> 
> See https://www.postgresql.org/docs/12/sql-grant.html for details.

Cool, that fixed it.

Thanks you.
-- 
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
                        -- Benjamin Franklin