我有一个用户,例如HR,它被授予了非常强大的系统权限“GRANT ANY PRIVILEGE”...这个用户使用了这个权限并为其他用户授予了一些权限......现在我要撤销“GRANT ANY PRIVILEGE” “来自HR和还确定哪些特权以及HR用户授予的权限(我想从他们那里撤销此权限)。
我知道oracle在元数据中只保存了被授予者和特权而不是授予者的系统特权(与对象特权不同)......
如果您有任何想法,请回答..
在此之前非常感谢。
答案 0 :(得分:3)
ALL_COL_PRIVS视图将显示授予者 ALL_TAB_PRIVS视图将显示授予者 TABLE_PRIVILEGES视图将显示授权者
加上这些的USER版本..
修改强>:
查找HR授予的对象权限列表,使用如下查询:
select * from all_tab_privs where grantor = 'HR';
我不知道检查系统级别对象授权的方法