Re: asignación de roles ... mi experimento

From: Victor Lopez <v(dot)lopez(dot)s(at)ono(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: asignación de roles ... mi experimento
Date: 2007-04-03 15:21:30
Message-ID: 200704031721.30073.v.lopez.s@ono.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Por si le interesa a alguien, aquí pongo un pequeño experimento para
descubrir 'que es que' en el mundo de los roles ... eso si, mejor en
monoespaciado.
*****************************************************************************
postgres=# \c test
Ahora está conectado a la base de datos «test».
test=# SELECT rolname, rolcanlogin FROM pg_authid;
rolname | rolcanlogin
---------------------+-------------
postgres | t
(1 filas)

test=# SELECT
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.roleid) AS
roleid,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.member) AS
member,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.grantor) AS
grantor
test-# FROM (SELECT * FROM pg_auth_members) AS fuente;
roleid | member | grantor
--------+--------+---------
(0 filas)

test=# CREATE ROLE rol1;
CREATE ROLE
test=# CREATE ROLE rol2;
CREATE ROLE
test=# CREATE ROLE rol3;
CREATE ROLE
test=# SELECT rolname, rolcanlogin FROM pg_authid;
rolname | rolcanlogin
---------------------+-------------
postgres | t
rol1 | f
rol2 | f
rol3 | f
(4 filas)

test=# CREATE USER usr1 IN ROLE rol1;
CREATE ROLE
test=# CREATE USER usr2;
CREATE ROLE
test=# SELECT
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.roleid) AS
roleid,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.member) AS
member,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.grantor) AS
grantor
test-# FROM (SELECT * FROM pg_auth_members) AS fuente;
roleid | member | grantor
--------+--------+----------
rol1 | usr1 | postgres
(1 fila)

test=# GRANT rol3 TO usr1;
GRANT ROLE
test=# GRANT rol3 TO usr2;
GRANT ROLE
test=# SELECT
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.roleid) AS
roleid,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.member) AS
member,
test-# (SELECT rolname FROM pg_authid WHERE pg_authid.oid = fuente.grantor) AS
grantor
test-# FROM (SELECT * FROM pg_auth_members) AS fuente;
roleid | member | grantor
--------+--------+----------
rol1 | usr1 | postgres
rol3 | usr1 | postgres
rol3 | usr2 | postgres
(3 filas)

test=#
*****************************************************************************
Solo muy raramente pondré algo tan largo.
--
----o---( )---o----
Saludos de Victor Lopez Sabio
v(dot)lopez(dot)s(at)ono(dot)com
--------oooo--------

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Rodrigo Abadia Mondragon 2007-04-03 15:36:45 Ayuda con el autovacuum
Previous Message Alvaro Herrera 2007-04-03 14:41:04 Re: Ayuda con AutoVacuum