42501: insufficient_privilege
PostgreSQLЧто это значит?
У роли нет привилегии, необходимой для выполняемой операции.
Почему возникает?
Не выдан необходимый GRANT на таблицу/схему/базу данных, отсутствует USAGE на схему, объект принадлежит другой роли или доступ блокируют политики защиты на уровне строк (RLS).
Как исправить
Выдайте недостающую привилегию: GRANT SELECT, INSERT ON my_table TO app_role; для схемы GRANT USAGE ON SCHEMA app_schema TO app_role. Для массовой выдачи используйте GRANT ... ON ALL TABLES IN SCHEMA, а для будущих объектов — ALTER DEFAULT PRIVILEGES. Просмотр текущих привилегий: \dp my_table. Если RLS активна, проверьте соответствующие политики.