【问题标题】:Is it possible to view Oracle user table privileges without having DBA privilege?是否可以在没有 DBA 权限的情况下查看 Oracle 用户表权限?
【发布时间】:2010-11-13 01:22:14
【问题描述】:

是否可以在没有 DBA 权限的情况下查看用户的角色?如果有,怎么做?

SELECT * FROM DBA_TAB_PRIVS WHERE GRANTEE = 'USER_NAME';

上述查询需要“SELECT_CATALOG_ROLE”角色。

我需要在没有(DBA 和 SELECT_CATALOG_ROLE)权限的情况下获得上述查询的结果。

【问题讨论】:

  • +1 最佳/最差问题标题
  • 我不知道为什么会有反对票。它只需要 30 秒的清洁就可以变成一个好的、可靠的问题。
  • 提问者在提问之前可能已经投入了 30 秒(不是我投反对票)
  • 基于问题内容,​​在我看来,更好的标题应该是“是否可以在没有 DBA 权限的情况下查看 Oracle 用户表权限?”。 Oracle 中的角色实际上与问题所暗示的有所不同。可以通过角色授予表权限。

标签: oracle roles privileges


【解决方案1】:

也许ALL_TAB_PRIVS 会提供你想要的。显然,它包含:

授予用户是授予者、被授予者、所有者或启用的角色或 PUBLIC 是被授予者的对象

【讨论】:

  • 亚当佩恩特,感谢您的回答。 :)
【解决方案2】:

看看我有什么 GRANT 和特权:

SELECT * FROM user_tab_privs;

【讨论】:

    【解决方案3】:

    您可以让 DBA 创建一个新角色并授予对表的新角色选择。然后 DBA 可以授予您新角色,这将允许您在没有 DBA 或选择目录角色的情况下查看表。

    【讨论】:

      【解决方案4】:

      DBA_TAB_PRIVS DBA_SYS_PRIVS DBA_ROLE_PRIVS

      这里是您可以检查角色和权限的主要表

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-01
        • 2013-08-22
        • 2012-08-04
        • 2012-04-17
        • 2014-11-25
        • 1970-01-01
        相关资源
        最近更新 更多