Skip site navigation (1) Skip section navigation (2)

Re: Postgres roles

From: "Pascal Tufenkji" <ptufenkji(at)usj(dot)edu(dot)lb>
To: "'Shane Ambler'" <pgsql(at)Sheeky(dot)Biz>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Postgres roles
Date: 2008-02-08 14:54:07
Message-ID: 200802081442.m18Eg3F1025812@Citrus.usj.edu.lb (view raw or flat)
Thread:
Lists: pgsql-sql
Hi Shane,

 

You are exactly right.

My issue is that, I now have one role called sti - that has carried the
group members from the old version -  

So what do you think my options are, so I can separate them? 

I have only one option in my mind:

-         Revoke the members from the role sti

-         Create a new role (that has rolcanlogin set to false) called
sti_group

-         Assign the members to it

-         Finally, fix all the permissions for all the tables (add the
permissions to the new group sti_group)
which seems like a huge amount of work. 

 

In that case I'll be able to give permissions such as :

GRANT SELECT ON table TO sti_group;
GRANT SELECT,INSERT,UPDATE,DELETE ON table TO sti;

 

Is there a better solution ?

 

Pascal 

 

 

-----Original Message-----
From: pgsql-sql-owner(at)postgresql(dot)org [mailto:pgsql-sql-owner(at)postgresql(dot)org]
On Behalf Of Shane Ambler
Sent: Friday, February 08, 2008 3:54 PM
To: ptufenkji(at)usj(dot)edu(dot)lb
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] Postgres roles

 

Pascal Tufenkji wrote:

 

> My questions are:

> 

>  

> 

> 1.      how do I identify the users assigned to this role :

> (in the older version)

> SELECT grolist from pg_group where groname = 'sti'; 

> 

 

"The view pg_group exists for backwards compatibility: it emulates a 

catalog that existed in PostgreSQL before version 8.1. It shows the 

names and members of all roles that are marked as not rolcanlogin, which 

is an approximation to the set of roles that are being used as groups."

 

 

Use pg_roles to get the user and group info. Use pg_auth_members to get 

the list of members that belong to each group role.

(any role can be used for a group but it is usually a role that has 

rolcanlogin set to false, and has members recorded in pg_auth_members)

 

http://www.postgresql.org/docs/8.2/interactive/user-manag.html

can explain it better - or more specifically

http://www.postgresql.org/docs/8.2/interactive/role-membership.html

 

> 

> 2.      how do I differ granting permissions on a table to the user sti
from

> the whole members of the group sti

> (in the older version)

> GRANT SELECT ON table TO group sti;

> GRANT SELECT,INSERT,UPDATE,DELETE ON table TO sti;

> 

 

Use a more descriptive name for the group or simply sti_group.

 

 

I am guessing that you have an issue because you now have one role 

called sti - that has carried the group members from the old version - 

this is the admin userid used to login but because it is used as a group 

it passes it's privileges to all members of sti.

 

 

 

 

 

-- 

 

Shane Ambler

pgSQL (at) Sheeky (dot) Biz

 

Get Sheeky @ http://Sheeky.Biz

 

---------------------------(end of broadcast)---------------------------

TIP 3: Have you checked our extensive FAQ?

 

               http://www.postgresql.org/docs/faq

In response to

Responses

pgsql-sql by date

Next:From: Ken JohansonDate: 2008-02-08 21:04:37
Subject: What are the (various) best practices/opinions for table/column/constraint naming?
Previous:From: Shane AmblerDate: 2008-02-08 13:53:50
Subject: Re: Postgres roles

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group