From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Laura Martinelli <lmartinelli(at)mail(dot)unlu(dot)edu(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Permisos de usuario |
Date: | 2009-04-03 16:17:33 |
Message-ID: | 20090403161733.GE23023@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Laura Martinelli escribió:
> Buenas a todos,
>
> Tengo la siguiente duda:
>
> Se tiene una Base de Datos DB1 cuyo dueño es User1. Necesitamos que
> otro usuario, User2 tenga permisos de "Superusuario" , que pueda
> acceder, borrar, crear y renombrar (tablas, esquemas, vistas, indices,
> etc) sobre DB1, sin ser dueño de la misma, pero al mismo tiempo NO
> debe tener acceso al resto de las Bases existentes, como lo hace el
> superusario.
> ¿Es esto posible? ¿De que manera se crearía el usuario User2 y como se
> le darían los permisos?
CREATE ROLE "User2" LOGIN;
GRANT CREATE ON DATABASE "DB1" TO "User2";
Con eso, User2 puede crear esquemas en la base de datos DB1.
SET SESSION AUTHORIZATION "User2";
CREATE SCHEMA un_esquema;
Una vez que ha creado el esquema, es dueño de él y por lo tanto puede
crear y renombrar objetos dentro de él, y también borrarlo.
Alternativamente, User1 puede crear el esquema dándoselo a User2:
SET SESSION AUTHORIZATION "User2";
CREATE SCHEMA otro_schema AUTHORIZATION "User2";
Lo de LOGIN es para que User2 pueda conectarse a la base de datos. Si
no se lo das, la única forma de usar User2 es a través de SET SESSION
AUTHORIZATION o SET ROLE.
Observa que le puedes otorgar User2 a un hipotético User3:
GRANT "User2" TO "User3";
en cuyo caso User3 va a tener automáticamente todos los privilegios de
User2.
--
Alvaro Herrera Valdivia, Chile ICBM: S 39º 48' 55.3", W 73º 15' 24.7"
"Las navajas y los monos deben estar siempre distantes" (Germán Poo)
From | Date | Subject | |
---|---|---|---|
Next Message | Laura Martinelli | 2009-04-03 16:40:49 | Re[4]: Permisos de usuario |
Previous Message | GRUPO SIC, S.A. DE C.V. | 2009-04-03 16:05:43 | RE: Re[2]: Permisos de usuario |