Oracle-向角色授予“创建作业”特权

时间:2018-07-06 09:29:16

标签: oracle

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 :(得分:1)

是的,它不能与文档中所述的通过角色授予的特权CREATE JOB一起使用:

  

“必须将对象特权直接授予用户。” source

关于Oracle为什么以这种方式实现它,人们只能猜测DBMS_SCHEDULER至少部分是在PL / SQL软件包中实现的。在各种存储过程中,众所周知,角色是禁用的。