в наших приложениях j2ee мы используем защищенную роль приложения.По сути, источник данных использует пользовательскую схему приложения для подключения к базе данных.пользователь приложения имеет только права на создание сеанса.триггер входа в базу данных скопирует набор атрибутов в локальный безопасный контекст.(IP-адрес, пользователь сеанса, идентификатор клиента, имя приложения).Приложения явно вызывают хранимую процедуру sec_mgr.set_role перед выполнением любых DML.
sec_mgr.set_role проверит атрибут локального контекста, авторизует IP-адрес, имя приложения и назначит роль, полезную для этого сеанса, в зависимости от пользователя сеанса.
мы хотим применить ту же платформу к приложению APEX.Сначала мы меняем схему сопряжения на схему приложения, которая имеет только привилегию создания сеанса.затем мы помещаем код plsql, в котором sec_mgr.set_role вызывается в конструкторе приложений -> общие компоненты ---> редактировать атрибут безопасности ---> Виртуальная частная база данных (VPD).
однако мы получилиошибка ORA-06565: невозможно выполнить SET ROLE из хранимой процедуры
sec_mgr.set_role определен как право вызывающего (AUTHID CURRENT_USER)
я что-то пропустил в APEX, чтобы заставить его работать?
Спасибо