From: | "Gustavo Garay" <chauria(at)gmail(dot)com> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Habilitar privilegio a funciones y/o procedimientos almacenados |
Date: | 2006-09-26 14:14:35 |
Message-ID: | 002b01c6e176$1aded700$6500a8c0@rectorado.une.edu.py |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Cuando uno define como security definer, y esa funcion actualiza tablas, no
hace falta que uno le de privilegios a los usuarios sobre las tablas que la
funcion actualiza, entonces los usuarios solo pueden ejecutar esa funcion, y
de ahi ya no tendran accesos a las tablas. Verdad ?
Gustavo Garay
>> Una consulta sobre privilegios de funciones
>>
>> Defino una funcion cualquiera, le digo que tiene seguridad del definidor
>> o
>> sea en este caso el superuser postgres
>>
>> todavia no di privilegio de ejecutar la funcion a ningun usuario o rol
>>
>> tengo un usuarios comun, que no tiene privilegio de nada, igual ese
>> usuario
>> me ejecuta la funcion.
>>
>> Que podria estar haciendo mal, o estoy encarando mal el tema de roles y
>> privilegios ?
>
> La funcion tiene privilegios de ejecucion para PUBLIC, seguramente ...
>
> Creo que lo que deberias hacer es
>
> BEGIN
> CREATE FUNCTION foobar() ... SECURITY DEFINER
> REVOKE ALL ON FUNCTION foobar FROM PUBLIC
> COMMIT
>
> De esa manera te ahorras el agujero de seguridad.
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2006-09-26 14:29:03 | Re: Habilitar privilegio a funciones y/o procedimientos almacenados |
Previous Message | Alvaro Herrera | 2006-09-26 13:57:44 | Re: Habilitar privilegio a funciones y/o procedimientos almacenados |