Oracle 使用者許可權分配

2021-07-14 04:18:46 字數 2408 閱讀 8103

在全域性資料庫orcl下建立乙個使用者

首先在開始--》執行——》sqlplus,然後輸入 sys/change_on_install as sysdba

以system許可權登陸進去

然後可以進行操作:

建立使用者 create user test indentified by test;

這樣就建立了乙個使用者名稱密碼都為test的使用者

但這個時候test還是不能登陸成功的,我們需要賦予相應的許可權

首先賦予create session的許可權

grant create session to test;

這樣test使用者就能成功登陸進去

但是此時使用者還是不能建立表 我們需要賦予使用者建立表的許可權:

grant create table to test;

但是使用者此時還不能建立表 因為需要有使用表空間的許可權(相當於 使用者有了進房間的鑰匙 但是沒有進大門的鑰匙)

所以也應該賦予相應的許可權

grant unlimited tablespace to test;

這個時候使用者就擁有了建立表的許可權 由於表是使用者test的 相應的他就擁有了對建立的表的增刪查改的許可權了

我們要檢視使用者擁有什麼許可權可以通過查詢乙個系統的檢視(數字字典)

select * from user_sys_privs;

這樣就可以知道當前使用者的許可權

撤銷許可權 revoke create table from test;

場景:使用者test 

使用者test1

test1的使用者建立了個表mytab 並且插入了一些資料

那麼 test使用者是否可以訪問到test1的mytab怎麼訪問?

答:不可以,必須先授權

test1必須授權給test :grant select on mytab to test;

那麼這個時候test可以通過 select * from test1.mytab;來訪問mytab中的資料

如果想把某個表(物件)的所有許可權都賦予給test那麼可以:

grant all on mytab to test;

撤銷所有許可權

revoke all on mytab to test;

總結:對於系統許可權由sys來做 

對於物件許可權由 誰擁有誰授權

系統許可權:

grant create session totest;

grant create table totest;

grant unlimited tablespace totest;

revoke create session fromtest;

revoke create table fromtest;

revoke unlimited tablespasefrom test;

grant create session topublic;  //表示把建立表的許可權賦予所有人

select * fromuser_sys_privs;  //返回當前使用者的所有系統許可權

grant select on mytab totest;

grant all on mytab totest;

revoke select on mytab fromtest;

revoke all on mytab fromtest;

物件許可權可以控制到列 (更新和插入操作)

grant update(name) on mytab totest;

grant insert(id) on mytab totest;

select * fromuser_col_privs;

注意:查詢和刪除不能控制到列 

需要有commit的 insert updateinsert

許可權的傳遞

系統許可權的傳遞:

grant alter table to a with admin option;

那麼a可以通過把該許可權傳遞給b,如果想b也可以傳遞下去那麼可以也帶上with adminoption

grant alter table to b;

物件許可權的傳遞:

grant select on mytab to a with grantoption;

那麼a可以把在表mytab的select許可權賦予給b,如果b想也能傳遞該select許可權也可以帶上with grantoption

grant select on mytab to b;

--建立使用者

create user keeltest identified by keeltest;

--分配許可權

grant create session,create table,create view ,create any index tokeeltest;

grant unlimited tablespace to keeltest;

Oracle使用者許可權分配

一 許可權分類 系統許可權 系統規定使用者使用資料庫的許可權。系統許可權是對使用者而言 實體許可權 某種許可權使用者對其它使用者的表或檢視的訪問許可權。是針對表或檢視而言的 二 系統許可權管理 1 系統許可權分類 dba 擁有全部特權,是系統最高許可權,只有dba才可以建立資料庫結構。resourc...

oracle使用者 許可權分配

通過控制台登入資料庫 sqlplus kely kely orcl localhost 使用者集合 dba users select from dba users 利用系統使用者建立新的使用者 create user 使用者名稱 identified by 密碼 default tablespace...

Oracle使用者許可權分配

一 許可權分類 系統許可權 系統規定使用者使用資料庫的許可權。系統許可權是對使用者而言 實體許可權 某種許可權使用者對其它使用者的表或檢視的訪問許可權。是針對表或檢視而言的 二 系統許可權管理 1 系統許可權分類 dba 擁有全部特權,是系統最高許可權,只有dba才可以建立資料庫結構。resourc...