oracle資料庫許可權基本認識
一、oracle許可權
oracle系統提供三種許可權:object 物件級、system 系統級、role 角色級。
許可權分類
1、系統許可權:系統規定使用者使用資料庫的許可權。(系統許可權是對使用者而言)。
2、實體許可權:某種許可權使用者對其它使用者的表或檢視的訪問許可權。(是針對表或檢視而言的)。
二、 系統許可權
系統許可權主要有:
dba: 擁有全部特權,是系統最高許可權,只有dba才可以建立資料庫結構。
resource:擁有resource許可權的使用者只可以建立實體,不可以建立資料庫結構。
connect:擁有connect許可權的使用者只可以登入oracle,不可以建立實體,不可以建立資料庫結構。
其中:1)授權命令:sql> grant connect, resource, dba to 使用者名稱1 [,使用者名稱2]…;
sql> create user user50 identified by user50;
sql> grant connect, resource to user50;
2)查詢使用者擁有**許可權
sql> select * from dba_role_privs;
sql> select * from dba_sys_privs;
sql> select * from role_sys_privs;
3)查自己擁有哪些系統許可權
sql> select * from session_privs;
4)刪除使用者
sql> drop user 使用者名稱 cascade; -- 加上cascade則將使用者連同其建立的東西全部刪除
6)系統許可權傳遞
增加with admin option選項,則得到的許可權可以傳遞。
sql> grant connect, resorce to user50 with admin option; -- 可以傳遞所獲許可權。
說明:(1)如果使用with admin option為某個使用者授予系統許可權,那麼對於被這個使用者授予相同許可權的所有使用者來說,取消該使用者的系統許可權並不會級聯取消這些使用者的相同許可權。
(2)系統許可權無級聯,即a授予b許可權,b授予c許可權,如果a收回b的許可權,c的許可權不受影響;系統許可權可以跨使用者**,即a可以直接收回c使用者的許可權。
7)系統許可權**:系統許可權只能由dba使用者**
sql> revoke connect, resource from user50;
三、實體許可權管理
實體許可權分類
select, update, insert, alter, index, delete, all //all包括所有許可權,execute //執行儲存過程許可權
1 許可權資訊
sql> select grantor, table_schema, table_name, privilege from all_tab_privs; -- 獲權可以訪問的表(被授權的)
sql> select grantee, owner, table_name, privilege from user_tab_privs; -- 授出許可權的表(授出的許可權)
2 實體許可權傳遞(with grant option):
user01:
sql> grant select, update on product to user02 with grant option; -- user02得到許可權,並可以傳遞。
3 實體許可權**:
user01:
sql>revoke select, update on product from user02; -- 傳遞的許可權將全部丟失。
說明1)如果取消某個使用者的物件許可權,那麼對於這個使用者使用with grant option授予許可權的使用者來說,同樣還會取消這些使用者的相同許可權,也就是說取消授權時級聯的。
ORACLE資料庫使用者賦權和相應許可權是否賦成功檢查
授予某個使用者connect角色的許可權 檢視該使用者是否有此角色 select from user role privs where username user1 檢視此角色所包含的系統許可權 或者 select from dba sys privs where grantee user1 具有資...
mysql建立資料庫並賦權
1.使用root使用者登入musql資料庫 mysql uroot p密碼 2.建立資料庫labsoft hc create database labsoft hc 3.給資料庫建立單獨使用者labsoft user create user labsoft user 4.給使用者labsoft us...
mysql建立資料庫並賦權
1.使用root使用者登入musql資料庫 mysql uroot p密碼 2.建立資料庫labsoft hc create database if not exists labsoft hcdefault charset utf8 collate utf8 general ci 3.給資料庫建立單...