Перейти к основному содержимому

Риск исполнения задач без аутентификации при использовании use_background_workers в pg_cron

к сведению

Актуально с версии 1.3.0 расширения pg_cron.

Расширение pg_cron используется в СУБД Pangolin для выполнения задач по расписанию (Job scheduler for PostgreSQL). Параметр use_background_workers управляет режимом выполнения задач расширения pg_cron.

Если параметр use_background_workers включен, задания выполняются во внутренних фоновых рабочих процессах СУБД Pangolin. В этом случае отдельное соединение к серверу не устанавливается, аутентификация через pg_hba.conf и проверка пароля не выполняются.

Вместо этого сессия фонового процесса напрямую переключается в роль, указанную в поле username таблицы cron.job. Таким образом, система полностью доверяет имени роли, сохраненному в записи задания, и немедленно выполняет соответствующую SQL-команду от ее имени, что потенциально несет риск при некорректной настройке прав доступа к созданию или изменению заданий.