Имеется клиентское приложение, для него специально создан пользователь БД "puser". Для данных пользователей создана специальная схема "pscheme" и назначены права "GRANT ALL ON SCHEMA", которая содержит только им предназначенные функции "pfunction1", "pfunction2"...
По логике данные мероприятия были затеяны с той целью, чтобы пользователь не имел доступ в другие схемы к реальным таблицам.
Возникла проблема: по запуску "pfunction1" от пользователя "puser" выдаёт ошибку "ОШИБКА: нет доступа к схеме public"
на следующий текст: "SELECT ... FROM public.users..."
.
С точки зрения безопасности, открытие доступа данному пользователю к данной таблице (а это и SELECT, и INSERT) - это такая большая "дырень". Т.е. не вариант.
Имеется ли возможность наладить требуемый формат безопасности?
Почитайте в мануале про опции
Почитайте в мануале про опции SECURITY DEFINER и SECURITY INVOKER при CREATE FUNCTON
Судя по всему - это оно.
Да, это именно то, что было
Да, это именно то, что было нужно. Благодарю.