У меня есть процедура (procedureA), которая создается в схеме (schemaA). У пользователя SchemaA нет привилегий только для роли CONNECT. ProcedureA отвечает за выбор, изменение, обновление ... privilages для конкретной таблицы в других схемах для конкретного пользователя. То, что я читал в oracle doc (How Procedure Privileges Affect Invoker's Rights), заключается в том, что процедура использует права владельца, и теперь я не понимаю, как можно вызвать эту процедуру с помощью пользователя sys, поскольку пользователь schemaA не имеет никаких прав. ПроцедураА была создана без AUTHID CURRENT_USER. После выполнения процедуры право собственности предоставляется правильно.Oracle procedure - invoker right vs права владельца
Благодаря
Если у схемы не было никаких привилегий, она не смогла бы создать процедуру; или были ли привилегии отменены позже? Вы смотрите только на роли или системные привилегии (dba_sys_privs) и права объекта (dba_tab_privs)? Привилегии от ролей не будут иметь никакого эффекта в процедуре прав владельцев, так или иначе, только прямые гранты. –
Привет, Алекс. Привилегии были отменены после того, как были созданы схема и процедура. dba_tab_privs также пуст для schemaA. Спасибо – mrrobot