Oracle - предоставьте привилегию Create Job для роли - PullRequest
0 голосов
/ 06 июля 2018

Oracle - предоставьте полномочие Create Job для роли

Login user = JOEL

User JOEL got error "ORA-27486: insufficient privileges ORA-06512: at 
"SYS.DBMS_ISCHED", line 124 ORA-06512: at "SYS.DBMS_SCHEDULER", line 271 ORA- 
06512: at line 1"

Чтобы устранить вышеуказанную ошибку, предоставьте JOEL следующую привилегию: Грант Создать работу для JOEL; Замечания: Предоставив Create Job для JOEL, это позволило устранить ошибку, описанную выше.


But, instead of granting "Create Job" directly to user JOEL, grant the 
privilege by ROLE as follow:

Create Role Job_Role;
Grant Create Job to Job_Role;
Grant Job_Role to JOEL;

Remarks: User JOEL got the same error even granted with Job_Role

Могу ли я знать, почему предоставление роли не работает? Спасибо.

1 Ответ

0 голосов
/ 06 июля 2018

Да, он не будет работать с привилегией CREATE JOB, предоставленной через роль, как указано в документации:

"Привилегии объекта должны предоставляться непосредственно пользователю." ( source )

Относительно того, почему Oracle реализовал это таким образом, можно только догадываться, что DBMS_SCHEDULER реализован хотя бы частично в пакете PL / SQL. Внутри хранимых процедур всех видов роли (не) классно отключены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...