From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Rubén da Silva <ruben(at)ozonomultimedia(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Permisos usuarios |
Date: | 2006-03-31 13:25:31 |
Message-ID: | 20060331132531.GA4466@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Rubén da Silva escribió:
> Como obtengo que permisos tiene el usuario "usuarioX" (ya dado de alta
> su rol y su permisos) sobre cada tabla de mi esquema public.?
>
> Me explico: necesito saber de antemano si un usuario puede grabar por
> ejemplo en la tabla "textos" para yo antes de intentar la grabación
> mostrarle vía web que solo puede leer de la tabla "textos".
Usa la funcion has_table_privilege(), por ejemplo (la tabla se llama
foo):
alvherre=# select has_table_privilege('alvherre', 'foo', 'select');
has_table_privilege
---------------------
t
(1 fila)
Hay multiples variantes, para indicar la tabla o usuario por nombre u
Oid.
alvherre=# \df has_table_privilege
Listado de funciones
Schema | Nombre | Tipo de dato de salida | Tipos de datos de argumentos
------------+---------------------+------------------------+------------------------------
pg_catalog | has_table_privilege | boolean | name, oid, text
pg_catalog | has_table_privilege | boolean | name, text, text
pg_catalog | has_table_privilege | boolean | oid, oid, text
pg_catalog | has_table_privilege | boolean | oid, text
pg_catalog | has_table_privilege | boolean | oid, text, text
pg_catalog | has_table_privilege | boolean | text, text
(6 filas)
Hay otras funciones has_*_privilege, las cuales puedes examinar con \df.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | Felipe Amezquita | 2006-03-31 13:42:10 | generar un archivo plano a partir de una consulta especifica |
Previous Message | Eduardo Rodrigo | 2006-03-31 07:51:22 | (BLOBS) |