1. ????? 創(chuàng)建用戶
概述:在 Oracle 中要?jiǎng)?chuàng)建一個(gè)新的用戶使用 create?? user 語句,一般是具有 dba 的權(quán)限才能使用。
Create? user ? 用戶名 ? identified? by 密碼;( oracle 密碼必須以字母開頭)
2. ????? 給用戶修改密碼
概述:如果給自己修改密碼可以直接使用
Password? ? 用戶名
如果給別人修改密碼,則需要具有 dba 的權(quán)限,或者擁有 alter user 的系統(tǒng)權(quán)限
SQL>alter user ? 用戶名 ? identified by 新密碼
3. ????? 刪除用戶
概述:一般以 dba 的身份去刪除某個(gè)用戶,如果用其他的用戶去刪除則需要 drop? user 的系統(tǒng)權(quán)限
Drop? user ? 用戶名【 cascade 】
在刪除用戶時(shí),注意:
如果要?jiǎng)h除的用戶已經(jīng)創(chuàng)建了表,那么就需要在刪除的時(shí)候帶一個(gè)參數(shù) cascade
?
?
4. ????? 權(quán)限和角色
概述:創(chuàng)建的新用戶是沒有任何權(quán)限的,甚至連登陸的數(shù)據(jù)庫的權(quán)限都沒有,需要為其指定相應(yīng)的權(quán)限。給一個(gè)用戶賦權(quán)限使用命令
grant
,回收權(quán)限使用命令
revoke
。
綜合案例:
SQL> conn xiaoming/m12;
?
ERROR:
?
ORA-01045: user XIAOMING lacks CREATE SESSION privilege; logon denied
?
警告
:
?
您不再連接到
?
ORACLE
。
SQL> show user;
?
USER
?
為
?
""
?
SQL> conn system/manager as system;
?
已連接。
?
SQL> grant connect to xiaoming;
?
授權(quán)成功。
?
SQL> conn xiaoming/m12;
已連接。
?
SQL>
?
注意:
grant connect to xiaoming;
在這里,準(zhǔn)確的講,
connect
不是權(quán)限,而是角色。
??*
?
希望
xiaoming
用戶可以去查詢
scott
的
emp
表
? ??grant select on emp to xiaoming
?
??*
?
希望
xiaoming
用戶可以去修改
scott
的
emp
表
? ??grant update on emp to xiaoming
?
??*
?
希望
xiaoming
用戶可以去修改
/
刪除,查詢,添加
scott
的
emp
表
? ??grant all on emp to xiaoming
?
??* scott
希望收回
xiaoming
對(duì)
emp
表的查詢權(quán)限
? ??revoke select on emp from xiaoming
*
?
希望
xiaoming
用戶可以去查詢
scott
的
emp
表
/
還希望
xiaoming
可以把這個(gè)權(quán)限繼續(xù)給別人。
--
如果是對(duì)象權(quán)限,就加入
?
with grant option
? grant select on emp to xiaoming with grant option
?
操作過程:
?
?SQL> conn scott/tiger;
?
?
已連接。
?
?SQL> grant select on scott.emp to xiaoming with grant option;
?
?
授權(quán)成功。
?
?SQL> conn system/manager as sysdba;
?
?
已連接。
?
?SQL> create user xiaohong identified by m123;
?
?
用戶已創(chuàng)建。
?
?SQL> grant connect to xiaohong;
?
?
授權(quán)成功。
?
?SQL> conn xiaoming/m12;
?
已連接。
?
SQL> grant select on scott.emp to xiaohong;
?
授權(quán)成功。
?
--
如果是系統(tǒng)權(quán)限。
system
給
xiaoming
權(quán)限時(shí):
grant connect to xiaoming with admin option
?
?
問題:如果
scott
把
xiaoming
對(duì)
emp
表的查詢權(quán)限回收,那么
xiaohong
會(huì)怎樣?
答案:被回收。
?
SQL> conn scott/tiger;
?
已連接。
?
SQL> revoke select on emp from xiaoming;
?
撤銷成功。
?
SQL> conn xiaohong/m123;
?
已連接。
?
SQL> select * from scott.emp;
?
select * from scott.emp
?
第
?
1
?
行出現(xiàn)錯(cuò)誤
:
ORA-00942:
?
表或視圖不存在
結(jié)果顯示:小紅受到誅連了。
5. ?????使用 profile 管理用戶口令
概述: profile 是口令限制,資源限制的命令集合,當(dāng)建立數(shù)據(jù)庫的, oracle 會(huì)自動(dòng)建立名稱為 default 的 profile 。當(dāng)建立用戶沒有指定 profile 選項(xiàng),那么 oracle 就會(huì)將 default 分配給用戶。
5.1.
賬戶鎖定
概述:指定該賬戶
(
用戶
)
登陸時(shí)最多可以輸入密碼的次數(shù),也可以指定用戶鎖定的時(shí)間
(
天
)
一般用
dba
的身份去執(zhí)行該命令。
例子:指定
scott
這個(gè)用戶最多只能嘗試
3
次登陸,鎖定時(shí)間為
2
天,讓我們看看怎么實(shí)現(xiàn)。
創(chuàng)建
profile
文件
SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
SQL> alter user scott profile lock_account;
5.2.
.
給賬戶
(
用戶
)
解鎖
SQL> alter user tea ?account unlock;
5.3.
.
終止口令
為了讓用戶定期修改密碼可以使用終止口令的指令來完成,同樣這個(gè)命令也需要
dba
的身份來操作。
例子:給前面創(chuàng)建的用戶
tea
創(chuàng)建一個(gè)
profile
文件,要求該用戶每隔
10
天要修改自己的登陸密碼,寬限期為
2
天。看看怎么做。
SQL> create profile myprofile limit password_life_time 10 password_grace_time ?2;
SQL> alter user tea profile myprofile;
5.4
口令歷史
概述:如果希望用戶在修改密碼時(shí),不能使用以前使用過的密碼,可使用口令歷史,這樣
oracle
就會(huì)將口令修改的信息存放到數(shù)據(jù)字典中,這樣當(dāng)用戶修改密碼時(shí),
oracle
就會(huì)對(duì)新舊密碼進(jìn)行比較,當(dāng)發(fā)現(xiàn)新舊密碼一樣時(shí),就提示用戶重新輸入密碼。
例子:
?
1
)建立
profile
?
SQL>create profile password_history limit password_life_time 10 password_grace_time 2 password_reuse_time 10
password_reuse_time //
指定口令可重用時(shí)間即
10
天后就可以重用
2
)分配給某個(gè)用戶
?
5.5
刪除
profile
概述:當(dāng)不需要某個(gè)
profile
文件時(shí),可以刪除該文件。
SQL> drop profile password_history
?
【
casade
】
注意:文件刪除后,用這個(gè)文件去約束的那些用戶通通也都被釋放了。
加了 casade ,就會(huì)把級(jí)聯(lián)的相關(guān)東西也給刪除掉
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

