You upgraded OracleDatabase 10g to Oracle Database 11g. How would this affect the existing users'passwords?你更新10g到11g,将怎樣影響你已經存在使用者的密碼?
A. All passwords automatically become case-sensitive.
B. All passwords remainnon-case-sensitive till they are changed.直到他們被修改,所有的密碼保持不區分大小寫
C. All passwords remain non-case-sensitive and cannot bechanged.
D. All passwords remain non-case-sensitive until theirpassword attribute in the profile is altered.
oracle 11g以前,密碼是不區分大小寫的……輸入的密碼都會被轉為大寫來處理;
從oracle11g開始,增加了一個sec_case_sensitive_logon參數,預設是TRUE,這時候就會區分大小寫了,
如果你用10g的client連11g的資料庫,就可能回出現ORA-01017: invalid username/password; logon denied 的錯誤。
如果想繼續使用不區分大小寫的方式,也很簡單,執行一條alter的sql即可
alter system set sec_case_sensitive_logon=False
由參數sec_case_sensitive_logon控制
參數值為true區分、false為不區分
系統預設情況為區分
--檢視目前參數值
SQL> show parameter logon
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon boolean TRUE
11g中可以運作腳本utlpwdmg.sql來建立密碼驗證程式避免系統中再出現弱密碼
11g中合法的密碼包括如下種類:
不少于8個字元長度
必須至少一個字母和數字
不能是簡單的或者常用的,如welcome1、abcdefg1
不能是oracle或者oracle附加數字1到100
不能是使用者名、使用者名反拼或者使用者名附加1到100的數字
不能是伺服器名或者伺服器名附加1到100的數字
必須和以前的密碼至少相差3個字元