1. 程式人生 > >oracle如何修改單個用戶密碼永不過期

oracle如何修改單個用戶密碼永不過期

oracle 用戶密碼

Oracle的密碼過期規則是用Profile來管理的,系統默認只有一個Profile(DEFAULT),該profile的密碼過期規則為180天;而所有的用戶都使用該DEFAULT的profile,所以如果修改DEFAULT的過期規則會影響所有的用戶。如果你想修改某個用戶的密碼讓其永不過期,則需要新建一個profile,修改該profile的過期規則為無限期,這樣該用戶的過期規則會改變,並且不會影響到其他用戶。

首先查看用戶的proifle是哪個,一般是default:

sql>SELECT username,PROFILE FROM dba_users;

USERNAME PROFILE

------------------------------ ------------------------------

SCOTT DEFAULT

EXFSYS DEFAULT

ORDSYS DEFAULT

MDSYS DEFAULT

FLOWS_FILES DEFAULT

OMUADM DEFAULT

SYSTEM DEFAULT

SYS DEFAULT

VPXADMIN DEFAULT

2、查看指定概要文件(如default)的密碼有效期設置:

sql>SELECT * FROM dba_profiles s WHERE s.profile=‘DEFAULT‘ AND resource_name=‘PASSWORD_LIFE_TIME‘;

PROFILE RESOURCE_NAME RESOURCE

------------------------------ -------------------------------- --------

LIMIT

----------------------------------------

DEFAULT PASSWORD_LIFE_TIME PASSWORD

180

3、如果在這裏將密碼有效期由默認的180天修改成“無限制”,則影響的是所有用戶:

sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

修改之後不需要重啟動數據庫,會立即生效。


註意:修改後,還沒有被提示ORA-28002警告的帳戶不會再碰到同樣的提示;

已經被提示的帳戶必須再改一次密碼,例如

$sqlplus / as sysdba

sql> alter user vpxadmin identified by <原來的密碼> ----不用換新密碼


那麽如果你要為某個用戶設置密碼永不過期,可以這樣來做。比如修改vpxadmin用戶的密碼過期規則為無限期UNLIMITED,只需要三個步驟:

1. 新建profile "VPXADMIN_UNLIMIT",規則與DEFAULT一致(因為一個profile中包含很多的項目,我們此時只想修改過期規則,其他的不變)

2. 修改profile "VPXADMIN_UNLIMIT",修改過期規則為UNLIMITED

3. 將‘VPXADMIN‘用戶適用新的profile "PASSWD_UNLIMIT"

1. 創建新的profile(VPXADMIN_UNLIMIT)復制DEFAULT的ScriptCREATE PROFILE "VPXADMIN_UNLIMIT" LIMIT SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED CONNECT_TIME UNLIMITED IDLE_TIME UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED COMPOSITE_LIMIT UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME 180 PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_LOCK_TIME 1 PASSWORD_GRACE_TIME 7

PASSWORD_VERIFY_FUNCTION NULL;


然後查看下

SELECT profile FROM dba_profiles;PROFILE

------------------------------

DEFAULT

VPXADMIN_UNLIMIT

已創建成功。


--2. 修改新建的profile(VPXADMIN_UNLIMIT),密碼過期為不過期ALTER profile VPXADMIN_UNLIMIT limit PASSWORD_LIFE_TIME UNLIMITED;--3. 修改用戶的Profile為新的profile

alter user VPXADMIN profile VPXADMIN_UNLIMIT; 再驗證一下,果然就可以了!

本文出自 “滴水穿石孫傑” 博客,請務必保留此出處http://xjsunjie.blog.51cto.com/999372/1922101

oracle如何修改單個用戶密碼永不過期