oracle – 列出可以访问某些表的用户

oracle – 列出可以访问某些表的用户,第1张

概述我确信以前曾经问过这个问题,但我似乎无法找到以下相关细节. 是否有某种预先构建的表可以执行以下 *** 作(我使用了dba_tab_privs,但它是有限的,不能满足我的所有需求),如果没有,是否有人有一些查询来回答以下问题? >列出已分配特定角色的所有用户? >列出给用户的所有角色? >列出给予用户的所有权限? >列出某个角色赋予SELECT访问权限的哪些表? >列出用户可以从中选择的所有表格? >列出 我确信以前曾经问过这个问题,但我似乎无法找到以下相关细节.

是否有某种预先构建的表可以执行以下 *** 作(我使用了dba_tab_privs,但它是有限的,不能满足我的所有需求),如果没有,是否有人有一些查询来回答以下问题?

>列出已分配特定角色的所有用户?
>列出给用户的所有角色?
>列出给予用户的所有权限?
>列出某个角色赋予SELECT访问权限的哪些表?
>列出用户可以从中选择的所有表格?
>列出可以在特定表上进行SELECT的所有用户(通过给予相关角色或通过直接授权(即授予joe的授权选择))?此查询的结果还应显示用户具有此访问权限的角色,或者是否是直接授权.

列出已分配特定角色的所有用户
-- Change 'DBA' to the required roleselect * from dba_role_privs where granted_role = 'DBA'

列出给予用户的所有角色

-- Change 'PHIL@ to the required userselect * from dba_role_privs where grantee = 'PHIL';

列出给予用户的所有权限

select  lpad(' ',2*level) || granted_role "User,his roles and privileges"from  (  /* THE USERS */    select       null     grantee,username granted_role    from       dba_users    where      username like upper('%&enter_username%')  /* THE RolES TO RolES RELATIONS */   union    select       grantee,granted_role    from      dba_role_privs  /* THE RolES TO PRIVILEGE RELATIONS */   union    select      grantee,privilege    from      dba_sys_privs  )start with grantee is nullconnect by grantee = prior granted_role;

注意:取自http://www.adp-gmbh.ch/ora/misc/recursively_list_privilege.html

列出某个角色赋予SELECT访问权限的哪些表?

-- Change 'DBA' to the required role.select * from role_tab_privs where role='DBA' and privilege = 'SELECT';

列出用户可以从中选择的所有表格?

--Change 'PHIL' to the required userselect * from dba_tab_privs where GRANTEE ='PHIL' and privilege = 'SELECT';

列出可以在特定表上进行SELECT的所有用户(通过给予相关角色或通过直接授权(即授予joe的授权选择))?此查询的结果还应显示用户具有此访问权限的角色,或者是否是直接授权.

-- Change 'tablename' belowselect Grantee,'Granted Through Role' as Grant_Type,role,table_namefrom role_tab_privs rtp,dba_role_privs drpwhere rtp.role = drp.granted_roleand table_name = 'tablename' unionselect Grantee,'Direct Grant' as Grant_type,null as role,table_namefrom dba_tab_privswhere table_name = 'tablename' ;
总结

以上是内存溢出为你收集整理的oracle – 列出可以访问某些表的用户全部内容,希望文章能够帮你解决oracle – 列出可以访问某些表的用户所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1167229.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存