Oracle中查看用户具有哪些权限及其相关视图
发布网友
发布时间:2022-04-20 01:47
我来回答
共1个回答
热心网友
时间:2022-04-08 03:31
查询某个用户具有的角色:
select grantee,granted_role from dba_role_privs where grantee='WJW';
查询某个用户具有的系统权限:
select grantee,privilege from dba_sys_privs where grantee='WJW';
查询某个角色中具有什么系统权限:
select privilege from role_sys_privs where role='RESOURCE';
查询某个角色中包含有什么角色
select granted_role from role_role_privs where role='SYSDBA';
如果想让某个用户拥有查看数据库数据字典的权限,但没有系统权限和针对用户数据的权限,则可以(通常对新数据库管理员有用)
grant create session,select_catalog_role to wjw;
管理用户、角色和权限的DBA视图:
DBA_USERS 提供用户的信息
DBA_ROLES 显示数据库中所有角色
DBA_COL_PRIVS 显示列级对象授权
DBA_ROLE_PRIVS 显示用户及其角色
DBA_SYS_PRIVS 显示被授予系统权限的用户
DBA_TAB_PRIVS 显示用户及他们在表上的权限
ROLE_ROLE_PRIVS 显示授予角色的角色
ROLE_SYS_PRIVS 显示授予角色的系统权限
ROLE_TAB_PRIVS 显示授予角色的表权限
SESSION_PRIVS 显示允许用户使用的权限
SESSION_ROLES 显示当前允许用户使用的角色