[pgbr-geral] lo_export dando erro: must be superuser...

2013-07-01 Por tôpico Nelson Luiz Gonzaga
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?

Obs.: Fiz isso para bloquear algumas tabelas de administracao do meu
sistema.
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] lo_export dando erro: must be superuser...

2013-07-01 Por tôpico Nelson Luiz Gonzaga
Em 1 de julho de 2013 14:13, Matheus de Oliveira
matioli.math...@gmail.comescreveu:


 On Mon, Jul 1, 2013 at 2:03 PM, Nelson Luiz Gonzaga ngonz...@ig.com.brwrote:

 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 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


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.

Valeu,
NG
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] lo_export dando erro: must be superuser...

2013-07-01 Por tôpico Matheus de Oliveira
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.brwrote:

 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