查詢方法:1、使用「select*from dba_roles;」可查看所有角色;2、使用「select*from dba_role_privs;」或「select * from user_role_privs;」可查看目前使用者所擁有的角色。
本教學操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。
何為角色
角色。角色是一組權限的集合,將角色賦給一個用戶,這個用戶就擁有了這個角色中的所有權限。
權限管理是 Oracle 系統的精華,不同使用者登入同一資料庫中,可能看到不同數量的表,擁有不同的權限。
Oracle 的權限分為系統權限和資料物件權限,共一百多種,如果單獨對使用者授權,很囧,有一些使用者需要的權限是相同的,就把這些使用者歸為同一類別-某種角色,透過設立一些有預定權限的角色簡化和明確授權操作,角色出現的動機也就是為了簡化權限管理,它是權限的集合。
一般做法是:系統把權限賦給角色,然後把角色賦給用戶,當然也可以直接把某個權限賦給用戶。 Oracle 提供細粒度的權限,可以對資料表的某一列單獨設定權限,並且可以對某位使用者查詢某表自動增添 where 限制條件。
Oracle 的角色存放在表 dba_roles 中,某角色包含的系統權限存放在 dba_sys_privs 中,包含的物件權限存放在 dba_tab_privs 中。
oracle查詢角色
1、檢視所有角色:
select * from dba_roles;
2、檢視目前使用者所擁有的角色:
select * from dba_role_privs; select * from user_role_privs;
擴展知識:
查看目前使用者的系統權限和表級權限
select * from user_sys_privs select * from user_tab_privs
查看使用者下所有的表格
select * from user_tables
顯示使用者資訊(所屬表空間)
select default_tablespace,temporary_tablespace from dba_users
顯示目前會話所具有的權限
select * from session_privs
顯示指定使用者所具有的系統權限
select * from dba_sys_privs
顯示特權使用者
select * from v$pwfile_users
推薦教學:《Oracle教學》
以上是oracle怎麼查詢角色的詳細內容。更多資訊請關注PHP中文網其他相關文章!