暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

灵异事件:业务user拥有resource和dba权限,却无法create table???

DataBaseNotes 2021-07-22
993

灵异事件:业务user拥有resource和dba权限,却无法create table???

  1. 异常发生的版本是oracle11.2.0.4

  2. 检查业务user的default TBS也正常

  3. 检查username,也不区分大小写!!!

  4. 重新赋权

    4.1.    grant connect,resource,dba to bpmuser1;
    4.2.    grant connect,resource,dba to BPMUSER1;
    以上均授权过,并commit。

  5. 授权后,来create table,却失败了。颠覆了我的认知...

  6. 继续检查bpmuser1拥有202个具体的权限。

    select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='BPMUSER1');

    结果显示:具有create table和create any table权限



  7. 开启1031跟踪事件。
    新建user,跟踪1031,不能重现此异常(新user给resource后就可以create table)




8. 咨询了很多朋友和大佬,也是很诡异,没查询到根本原因。。。

难道是bug?也没听说11g有这样的bug啊,这么多年,第一次遇到。。。

我还是不理解为什么。为什么resource本来就包含create table权限,不可以,我还给了dba role,也不行。。。

有没有大佬指点迷津,谢谢。


9. 解决方法:

解决方法1:grant create table to bpmuser1;

解决方法2:grant CONNECT,RESOURCE to bpmuser1;

以上两种方法均可以。

但是为什么小写的 grant resource,dba to bpmuser1;却不可以???有没有大佬指点迷津,再次谢谢。

另外有朋友提供的方法:重建user,我这是正式库的业务账号,排除此方法。



10. 最后,mark一下。

此异常虽解决。但是根本原因还是没找到。

有没有大佬指点迷津,谢谢。。。

文章转载自DataBaseNotes,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论