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: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: como listar los permisos de un esquema
Date: 2008-04-14 23:38:08
Message-ID: 925902880804141638x7815d189i80e0cbdebb21718c@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

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.

On Mon, Apr 14, 2008 at 3:47 PM, Marcos Saldivar
<baron(dot)rojo(dot)cuerdas(dot)de(dot)acero(at)gmail(dot)com> wrote:
> 2008/4/14, Julio Cesar Rodriguez Dominguez <jurasec(at)gmail(dot)com>:
> > Hola, buen día.
> > Mi nombre es Julio Cesar Rodriguez, estamos desarrollando un sistema
> > contable el cual manejara distintas sucursales, y
> > hemos decidido usar esquemas para controlarlas, poniendo en ellas solo
> > las tablas que serán especificas por sucursal, en estos
> > momentos estamos desarrollando la parte del control de los usuarios, y
> > para eso nos estamos apoyando del control de roles
> > que tiene postgreSql, bueno el punto es que necesito listar los
> > permisos que tiene cada esquema y cada función en la base de datos.
> > He usado \z o \dp, pero este solo me lista los permisos de tablas,
> > vistas y sequencias. Ya que es para verificar si se estan llevando
> > acabo dichos cambios sobre los esquemas.
> >
> > Gracias por sus respuestas
>
> Yo construi una vista con el siguiente select:
>
> SELECT n.nspname AS schema, c.relname AS entidad, c.relkind AS type,
> r.rolname AS owner, COALESCE(c.relacl::text, ((('{'::text ||
> r.rolname::text) || '=arwdxt/'::text) || r.rolname::text) ||
> '}'::text) AS permisos
> FROM pg_class c
> JOIN pg_roles r ON r.oid = c.relowner
> LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
> WHERE (c.relkind = ANY (ARRAY['r'::"char", 'v'::"char", 'S'::"char",
> ''::"char"])) AND n.nspname <> 'pg_catalog'::name AND n.nspname !~
> '^pg_toast'::text AND pg_table_is_visible(c.oid)
> ORDER BY c.relkind;
>
>
> con la vista realice otra vista para tener mejor manejo de ella,
> espero que te ayude.
>
>
> ps: encontrar como hacer las ordenes "\z" o "\d" debes ejecutar psql con "-E"
>

--
:: Jc3 ::

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2008-04-14 23:50:14 Re: como listar los permisos de un esquema
Previous Message Gunnar Wolf 2008-04-14 23:03:54 Re: [OFF-TOPIC]porque el text