oracle数据库赋权_Oracle数据库权限
Oracle數(shù)據(jù)庫(kù)權(quán)限基本認(rèn)識(shí)
一、oracle權(quán)限
ORACLE系統(tǒng)提供三種權(quán)限:Object 對(duì)象級(jí)、System 系統(tǒng)級(jí)、Role 角色級(jí)。
權(quán)限分類
1、系統(tǒng)權(quán)限:系統(tǒng)規(guī)定用戶使用數(shù)據(jù)庫(kù)的權(quán)限。(系統(tǒng)權(quán)限是對(duì)用戶而言)。
2、實(shí)體權(quán)限:某種權(quán)限用戶對(duì)其它用戶的表或視圖的存取權(quán)限。(是針對(duì)表或視圖而言的)。
二、 系統(tǒng)權(quán)限
系統(tǒng)權(quán)限主要有:
DBA: 擁有全部特權(quán),是系統(tǒng)最高權(quán)限,只有DBA才可以創(chuàng)建數(shù)據(jù)庫(kù)結(jié)構(gòu)。
RESOURCE:擁有Resource權(quán)限的用戶只可以創(chuàng)建實(shí)體,不可以創(chuàng)建數(shù)據(jù)庫(kù)結(jié)構(gòu)。
CONNECT:擁有Connect權(quán)限的用戶只可以登錄Oracle,不可以創(chuàng)建實(shí)體,不可以創(chuàng)建數(shù)據(jù)庫(kù)結(jié)構(gòu)。
其中:
1)授權(quán)命令:SQL> grant connect, resource, dba to 用戶名1 [,用戶名2]…;
SQL> Create user user50 identified by user50;
SQL> grant connect, resource to user50;
1
2
2)查詢用戶擁有哪里權(quán)限
SQL> select * from dba_role_privs;
SQL> select * from dba_sys_privs;
SQL> select * from role_sys_privs;
1
2
3
3)查自己擁有哪些系統(tǒng)權(quán)限
SQL> select * from session_privs;
1
4)刪除用戶
SQL> drop user 用戶名 cascade; -- 加上cascade則將用戶連同其創(chuàng)建的東西全部刪除
1
6)系統(tǒng)權(quán)限傳遞
增加WITH ADMIN OPTION選項(xiàng),則得到的權(quán)限可以傳遞。
SQL> grant connect, resorce to user50 with admin option; -- 可以傳遞所獲權(quán)限。
1
說明:
(1)如果使用WITH ADMIN OPTION為某個(gè)用戶授予系統(tǒng)權(quán)限,那么對(duì)于被這個(gè)用戶授予相同權(quán)限的所有用戶來說,取消該用戶的系統(tǒng)權(quán)限并不會(huì)級(jí)聯(lián)取消這些用戶的相同權(quán)限。
(2)系統(tǒng)權(quán)限無級(jí)聯(lián),即A授予B權(quán)限,B授予C權(quán)限,如果A收回B的權(quán)限,C的權(quán)限不受影響;系統(tǒng)權(quán)限可以跨用戶回收,即A可以直接收回C用戶的權(quán)限。
7)系統(tǒng)權(quán)限回收:系統(tǒng)權(quán)限只能由DBA用戶回收
SQL> Revoke connect, resource from user50;
1
三、實(shí)體權(quán)限管理
實(shí)體權(quán)限分類
select, update, insert, alter, index, delete, all //all包括所有權(quán)限,execute //執(zhí)行存儲(chǔ)過程權(quán)限
1 權(quán)限信息
SQL> select grantor, table_schema, table_name, privilege from all_tab_privs; -- 獲權(quán)可以存取的表(被授權(quán)的)
SQL> select grantee, owner, table_name, privilege from user_tab_privs; -- 授出權(quán)限的表(授出的權(quán)限)
1
2
2 實(shí)體權(quán)限傳遞(with grant option):
user01:
SQL> grant select, update on product to user02 with grant option; -- user02得到權(quán)限,并可以傳遞。
1
3 實(shí)體權(quán)限回收:
user01:
SQL>Revoke select, update on product from user02; -- 傳遞的權(quán)限將全部丟失。
1
說明
1)如果取消某個(gè)用戶的對(duì)象權(quán)限,那么對(duì)于這個(gè)用戶使用WITH GRANT OPTION授予權(quán)限的用戶來說,同樣還會(huì)取消這些用戶的相同權(quán)限,也就是說取消授權(quán)時(shí)級(jí)聯(lián)的。
總結(jié)
以上是生活随笔為你收集整理的oracle数据库赋权_Oracle数据库权限的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 虚拟机安装XP操作系统
- 下一篇: 《高性能mysql》之MySQL高级特性