| 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: | Whole Thread | Raw Message | 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) |