У меня есть пользователь, который должен иметь доступ только для 2-х функций, так что я получил их ему:GRANT EXECUTE не предоставление доступа к соответствующим таблицам функции
REVOKE ALL ON FUNCTION some_func(firstid INT) FROM PUBLIC;
GRANT EXECUTE ON FUNCTION some_func(firstid INT) TO some_user;
Но я получаю странные ошибки:
42501: permission denied for relation some_table
при попытке получить доступ к моей функции с:
SELECT * FROM offers_get(0);
моя функция выглядит следующим образом:
CREATE OR REPLACE FUNCTION public.some_func(firstid integer)
RETURNS TABLE(/* something */)
LANGUAGE plpgsql
AS $function$
DECLARE
/* something */
BEGIN
/* some other logic */
RETURN QUERY SELECT * FROM some_table;
END;
$function$
Таким образом, доступ к связанным таблицам не был предоставлен? Как предоставить доступ только для выполнения функции?
Спасибо вам большое. Мяу. –