1. 程式人生 > >sql語句中對賬戶的管理

sql語句中對賬戶的管理

sql語句關於對資料庫中賬號管理的使用:
一、建立使用者:
資料庫中只有system或sys使用者才有建立使用者的許可權所以
1.首先使用conn命令切換到system使用者
conn system/密碼
2.建立使用者
create user 賬號名 inentified by 密碼;
注意:這裡的建立使用者是不能夠登入的,因為該使用者還沒有任何的許可權
二、修改使用者的密碼:
alter user 使用者名稱 inentified by 密碼;
三、授權:
grant 許可權名1,許可權名2......
to 使用者名稱;
例如:(把建立表,建立序列,建立檢視的許可權授權給sss使用者)
grant create table, create sequence,create view
to sss;
但是這樣寫一般過於繁瑣,資料庫系統提供了一種角色,可以把角色的許可權直接授權給使用者,例如:
grant resource,connect,dba
to scott;
3種標準的角色: 
(a) connect: 提供了登入和執行基本函式的能力。可以連線資料庫以及在這些表中進對資料進行查詢,插入,修改及刪除的許可權。
(b) resource: 建立物件的能力。
(c) dba: 擁有所有的系統許可權,包括無限的空間限額,以及給其他使用者授予全部許可權的能力。
四、授予使用者授權權:
grant 許可權名1,許可權名2.....
ON 表名
TO {使用者名稱或public}
with grant option; 
to public 指將許可權賦予給所有的使用者
with grant option 指當前授權的使用者有權把自己的許可權授予給別的使用者
例如:(將student表的查詢權和插入資訊權授權給sss使用者,並且sss使用者可以把這兩個許可權授權給別的使用者)
grant select,insert
on student
to sss
with grant option
五、回收許可權:
revoke 許可權名1,許可權名2
on 表名
from 使用者名稱
with grant option
這裡with grant option指回收此使用者授予別人的所有許可權
例如:(將student表的查詢權,插入權從使用者sss的手中收回,並且收回sss曾經給別的使用者授過的這兩種許可權)
revoke select,insert
  ON student
 FROM sss
with grant option;