Re: Private or publice function

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Re: Private or publice function
Дата
Msg-id 41E41CA1.7070807@archonet.com
обсуждение исходный текст
Ответ на Private or publice function  (Nirmalya Lahiri <nirmalyalahiri@yahoo.com>)
Ответы Re: Private or publice function  (Bruno Wolff III <bruno@wolff.to>)
Список pgsql-general
Nirmalya Lahiri wrote:
> Thanks Richard,
>  for your reply. Now I am explaining you what I want.
> Let I have 4
> functions......function_1(),function_2(),function_3(),function_4().
[snip]
>  Now after creating these functions, I can easily call every function
> from psql prompt. But I want to encapsulate function_2() and
> function_3() withen function_1(), so that no one can call
> function_2() and function_3() from psql prompt and from function_4(),
> only from withen the function_1() I can call function_2() and
> function_3().
>
>  Is it possible in PostgreSQL?

Not elegantly - plpgsql only has PostgreSQL's naming and permissions
structure to use. Perhaps the simplest is to create a schema "private"
only accessible to user "U1". Place function2(),function(3) in schema
"private".
Place function1() in the public schema, making sure you create it as
user "U1" and mark it "SECURITY DEFINER".

So - everyone can execute function1(), but only user U1 can run
function2()/3(). Since function1() runs as user U1 everything should
just work.

--
   Richard Huxton
   Archonet Ltd

В списке pgsql-general по дате отправления:

Предыдущее
От: Terry Lee Tucker
Дата:
Сообщение: Re: Interval Question
Следующее
От: Nirmalya Lahiri
Дата:
Сообщение: Re: Private or publice function