不少使用Oracle數(shù)據(jù)庫的用戶都可能遇到密碼過期的問題,這是Oracle 11的一個安全特性。當(dāng)用戶的密碼到了設(shè)定的過期時間,系統(tǒng)會強(qiáng)制要求用戶更改密碼,否則將無法正常使用。
在Oracle 11中,密碼過期的時間可以在創(chuàng)建用戶時指定,也可以使用ALTER USER命令設(shè)置。例如,創(chuàng)建一個用戶名為test的用戶,并設(shè)置密碼過期時間為30天:
CREATE USER test IDENTIFIED BY testpwd PASSWORD EXPIRE IN 30;
當(dāng)test用戶登錄之后,系統(tǒng)會強(qiáng)制要求用戶更改密碼,否則無法正常使用。如果用戶在30天內(nèi)沒有更改密碼,下次登陸時仍然會提示用戶更改密碼。
此外,Oracle 11還提供了一個全局參數(shù)來控制密碼過期的時間。如果在系統(tǒng)級別設(shè)置了PASSWORD_LIFE_TIME參數(shù),那么所有用戶的密碼過期時間都會被控制在這個范圍內(nèi)。
ALTER SYSTEM SET PASSWORD_LIFE_TIME = 90;
以上語句將所有用戶的密碼過期時間限制在90天內(nèi)。如果系統(tǒng)中已經(jīng)存在了一批用戶,并且想要更改密碼過期時間,可以使用ALTER USER語句來實(shí)現(xiàn)。
ALTER USER test PASSWORD EXPIRE IN 90;
此時test用戶的密碼過期時間將會被延長為90天。如果想要禁用密碼過期的策略,可以使用以下命令:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
以上語句將系統(tǒng)中所有用戶的密碼過期策略禁用掉,也就是說,用戶的密碼將不會過期。
在使用Oracle數(shù)據(jù)庫時,密碼的安全性非常重要,密碼過期策略可以有效的提高系統(tǒng)的安全性。但同時,也要注意,過于頻繁的更改密碼會帶來一定的不便,因此合理的密碼過期策略需要綜合考慮到系統(tǒng)的安全性和用戶的實(shí)際情況。