gpt4 book ai didi

oracle - 如何查看授予另一个用户的架构哪些权限

转载 作者:行者123 更新时间:2023-12-03 12:11:53 25 4
gpt4 key购买 nike

考虑这种情况:在一个数据库中,我有两个用户 A 和 B 以及它们对应的模式。

我想知道,如何获取信息:架构 B 中的用户 A 有哪些权限。

考虑这种情况:我们有两个用户和他们关联的 sehmas。我们有用户 A 和用户 B。在 A 中,假设我们有 TB1 TB2,在 B 中,假设我们有 TBa,TBb。现在我想知道如何找到用户 A 对架构 B 的权限。

例如:用户 A 正在写:select * from B.TBb这意味着用户 A 正在访问用户 B 的表,因此表明他具有 SELECT 特权。我想知道用户 A 对架构 B 拥有的所有权限。

应该执行哪个查询来获取用户 A 对模式 B 的权限列表。

最佳答案

您可以使用这些查询:

select * from all_tab_privs;
select * from dba_sys_privs;
select * from dba_role_privs;

这些表中的每一个都有一个 grantee列,您可以在 where 条件中对其进行过滤:
where grantee = 'A'

要查询其他模式中对象(例如表)的权限,我首先建议 all_tab_privs ,它还有一个 table_schema柱子。

如果您是使用要查询权限的同一用户登录,则可以使用 user_tab_privs , user_sys_privs , user_role_privs .普通的非 dba 用户可以查询它们。

关于oracle - 如何查看授予另一个用户的架构哪些权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14604576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com