Security Definer functions no longer works in PG14+

Поиск
Список
Период
Сортировка
От Jobin Augustine
Тема Security Definer functions no longer works in PG14+
Дата
Msg-id CANaTPsphRF+7k+YANMv8goGu3oQLY9XtACpkec8Ju=mr59GHGA@mail.gmail.com
обсуждение исходный текст
Ответы Re: Security Definer functions no longer works in PG14+  (Jan Katins <jasc@gmx.net>)
Список pgsql-bugs
Hello Community and Hackers,

A function like:

CREATE OR REPLACE  FUNCTION fn_sql_refresh() RETURNS void AS $$
    ALTER SUBSCRIPTION sub REFRESH PUBLICATION;
$$ LANGUAGE SQL SECURITY DEFINER;

Works with PostgreSQL 13 and older versions.
But gives error on PostgreSQL 14 as follows:

postgres=> select fn_sql_refresh();
ERROR:  ALTER SUBSCRIPTION ... REFRESH cannot be executed from a function
CONTEXT:  SQL function "fn_sql_refresh" statement 1


But it is hurting good operational use cases of logical replication.

Regards,
Jobin.

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: BUG #17474: Segmentation fault from INSERT ( JumbleExpr )
Следующее
От: Jan Katins
Дата:
Сообщение: Re: Security Definer functions no longer works in PG14+