From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Victor Lopez <v(dot)lopez(dot)s(at)ono(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: asignación de roles |
Date: | 2007-04-02 19:15:33 |
Message-ID: | 20070402191533.GG13946@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Victor Lopez escribió:
> Tengo una serie de roles, caracterizados porque cada uno tiene asignados unos
> GRANTs (llamemosles 'rol1' y 'rol2')
>
> Creo un usuario (con LOGIN) 'u' y, en vez de repetir todos los GRANTs
> del 'rol2', le asigno el 'rol2'
>
> CREATE ROLE u WITH LOGIN ENCRYPTED PASSWORD 'pitopito' IN ROLE rol2;
> correcto? o ...
> CREATE ROLE u WITH LOGIN ENCRYPTED PASSWORD 'pitopito' ROLE rol2;
> sin el 'IN'
Son lo contrario: IN ROLE hace que u pertenezca al rol rol2, mientras
que ROL rol2 hace que el rol2 sea parte del u (lo cual hace que u sea un
"grupo").
http://www.postgresql.org/docs/8.2/static/sql-createrole.html
IN ROLE rolename
The IN ROLE clause lists one or more existing roles to which the new
role will be immediately added as a new member. (Note that there is
no option to add the new role as an administrator; use a separate
GRANT command to do that.)
ROLE rolename
The ROLE clause lists one or more existing roles which are
automatically added as members of the new role. (This in effect
makes the new role a "group".)
> ALTER ROLE u ... no hay para asignar a otro rol ?
No, como puede verse en la documentacion:
ALTER ROLE cannot change a role's memberships. Use GRANT and REVOKE to
do that.
http://www.postgresql.org/docs/8.2/static/sql-alterrole.html
Moraleja: lee la documentacion.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | Victor Lopez | 2007-04-02 19:24:34 | Re: asignación de roles |
Previous Message | Alvaro Herrera | 2007-04-02 19:11:19 | Re: determinar roles asignados (asignación de roles al revés) |