Re: como listar los permisos de un esquema

From: "Julio Cesar Rodriguez Dominguez" <jurasec(at)gmail(dot)com>
To: "Marcos Saldivar" <baron(dot)rojo(dot)cuerdas(dot)de(dot)acero(at)gmail(dot)com>
Cc: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: como listar los permisos de un esquema
Date: 2008-04-15 15:46:01
Message-ID: 925902880804150846g83f453i9c48056bb660dc95@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2008/4/15 Julio Cesar Rodriguez Dominguez <jurasec(at)gmail(dot)com>:
> 2008/4/14 Marcos Saldivar <baron(dot)rojo(dot)cuerdas(dot)de(dot)acero(at)gmail(dot)com>:
>
>
> > 2008/4/14, Alvaro Herrera <alvherre(at)commandprompt(dot)com>:
> >
> > > Julio Cesar Rodriguez Dominguez escribió:
> > >
> > > > Muchas gracias Marco por tu respuesta, pero no consegui correr la
> > > > consultas, ya que marca erro en "r", supongo que es por la profundidad
> > > > de los parentesis.
> > >
> > >
> > > Lo probe en varias versiones, y solo funciona en 8.3. En 8.2 y 8.1 da
> > > el siguiente error:
> > >
> > > ERROR: cannot cast type aclitem[] to text
> > > LINE 2: r.rolname AS owner, COALESCE(c.relacl::text, ((('{'::text |...
> > >
> > >
> > > En 8.0 y 7.4 da el siguiente error:
> > >
> > > ERROR: relation "pg_roles" does not exist
> > >
> > >
> > > En ningun caso veo un error en "r". Yo creo que lo copiaste mal.
> >
> > Efectivamente solo lo e usado en 8.3 ya que en esta versión trabajo,
> > de todas formas es una simple vista a punta de mirar que hacen la
> > orden "\z" o "\dp". La columna "permisos" tiene un COALESCE porque
> > cuando la secuencia, tabla, vista no tiene mas que permisos para el
> > dueño(osea ningún otro usuario puede hacer algo con el objeto) se
> > muestra como null, asi que para mi propósito muestro la cadena del
> > tipo {owner=arwdxt/owner}. con esta vista puedo generar otras vista
> > donde llego a mostrar por separado los permisos, osea quien tiene el
> > permiso y que permiso es.
> >
> > Adjunto un script con la creación de tres vistas, la ultima es la que
> > mas uso para mi propósito....
> >
> > saludos.-
> >
>
> Si, efectivamente por eso no corrió. Ya lo he probado en la version
> 8.3 y si funciono.
> Gracias Alvaro y tambien gracias Marcos, por ayudarme.
>
> Nota: Creo que ya tendremos que ir pensando en migrar a la ver. 8.3,
> ya que actualmete usamos la 8.2.5
> ------
> LSC.
>

Bueno voy a ser sincero, por que creo que no me explique bien, acerca de lo que
necesitabamos, ya que lo que hace las vistas anteriores son mostrar
los permisos sobre tablas, vistas y secuencias, y lo que necesitaba es ver
una tabla con los permisos de los esquemas (USAGE ó CREATE), la vista anterior
hace exactamente lo que muestra \z o \dp como dice Marcos, aunque de igual
forma vamos a usar esas vistas, pero como no estaba satisfecha la
necesidad, seguimos
investigando un poco mas y encontramos que si existen funciones para
dicha información,
las cuales son has_schema_privilege(user, schema, privilege) ó
has_schema_privilege(schema, privilege).
Reitero, disculpen por no haberme explicado bien y gracias de nuevo a ambos. :-)

--
:: Jc3 ::

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Calabaza 2008-04-15 15:50:56 Funcion para obtener el ultimo dia de un mes
Previous Message Julio Cesar Rodriguez Dominguez 2008-04-15 15:30:03 Re: como listar los permisos de un esquema