2013/7/1 Nelson Luiz Gonzaga <ngonz...@ig.com.br>

>
>
>
> Em 1 de julho de 2013 14:13, Matheus de Oliveira <
> matioli.math...@gmail.com> escreveu:
>
>>
>> On Mon, Jul 1, 2013 at 2:03 PM, Nelson Luiz Gonzaga 
>> <ngonz...@ig.com.br>wrote:
>>
>>> Ola a todos,
>>> Criei um user 'nosuperuser' e dei permissao a todo o BD porem deparei
>>> com o erro/hint no lo_export:
>>>
>>> ERROR:  must be superuser to use server-side lo_export()
>>> HINT:  Anyone can use the client-side lo_export() provided by libpq.
>>>
>>> Tentei dar as permissoes para a function lo_export no pg_catalog mas nao
>>> adiantou.
>>> Alguma ideia?
>>>
>>>
>>
>> A função lo_export salva dados no sistema de arquivos do servidor, logo,
>> é perigosa! Somente um superusuário deve utilizá-la mesmo. Vejo duas
>> soluções para o seu caso:
>>
>> 1. Use outra interface para recuperar LOBs, geralmente os drivers
>> disponibilizam uma (veja a doc. de seu driver/linguagem);
>> 2. Crie uma função como administrador que encapsula a chamada desta e
>> salva somente num local seguro, como /tmp, e defina-a como SECURITY DEFINER.
>>
>> Atenciosamente,
>>
>>
> Matheus,
> Voce é o cara!
>
> Eu ja tinha uma funcao para ler o LO que chamava a lo_export, dei o
> 'security definer' nela e funcionou perfeitamente.
>
>
Só tome cuidado com as implicações de segurança que isso pode causar...


Atenciosamente,
-- 
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a