large object import
Hi all,
I am having a stored function in plperlU which is called from php script then. It select data from a table, export them to a file and zips the file. The problem is that it should store this file into temporary table. Then it should return some identificator to php, so that the user can download it via php. Problem is that postgreSQL doesn't supports server-side large object operations for non superuser roles.
Can someone please give me a suggestion how can I solve this problem. I mean if I can import the file some other way or if there are some other usual procedures how to do this?
Thanks in advance,
Lukas Houf
postgre@seznam.cz wrote:
I am having a stored function in plperlU which is called from
php script then. It select data from a table, export them to
a file and zips the file. The problem is that it should store
this file into temporary table. Then it should return some
identificator to php, so that the user can download it via
php. Problem is that postgreSQL doesn't supports server-side
large object operations for non superuser roles.
PostgreSQL supports server-side large object operations for non-superusers.
Functions that access the file system are restricted to superusers.
Can someone please give me a suggestion how can I solve this
problem. I mean if I can import the file some other way or if
there are some other usual procedures how to do this?
You can create a function with SECURITY DEFINER that is owned
by a superuser. That way you can make certain restricted functionality
available to regular users. You should be careful and as restrictive
as possible when writing such functions.
Yours,
Laurenz Albe
------------ Původní zpráva ------------
Od: Albe Laurenz <laurenz.albe@wien.gv.at>
Předmět: Re: [GENERAL] large object import
Datum: 10.3.2008 08:44:30
----------------------------------------postgre@seznam.cz wrote:
I am having a stored function in plperlU which is called from
php script then. It select data from a table, export them to
a file and zips the file. The problem is that it should store
this file into temporary table. Then it should return some
identificator to php, so that the user can download it via
php. Problem is that postgreSQL doesn't supports server-side
large object operations for non superuser roles.PostgreSQL supports server-side large object operations for non-superusers.
Functions that access the file system are restricted to superusers.
Can someone please give me a suggestion how can I solve this
problem. I mean if I can import the file some other way or if
there are some other usual procedures how to do this?You can create a function with SECURITY DEFINER that is owned
by a superuser. That way you can make certain restricted functionality
available to regular users. You should be careful and as restrictive
as possible when writing such functions.Yours,
Laurenz Albe--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
Hi,
thank you very much, this helped a lot. It works fine.
Lukas Houf