密碼大小寫敏感是Oracle 11g數據庫默認的一個新特性,數據庫配置助手(DBCA)在創建數據庫期間允許你將這個設置返回到11g以前的功能。
SEC_CASE_SENSITIVE_LogoN初始化參數控制密碼大小寫是否敏感,如果現有應用程序與11g的認證過程沖突,你可以使用ALTER SYSTEM命令將這一功能關閉。
SQL> SHOW PARAMETER SEC_CASE_SENSITIVE_LogoN
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_Logon boolean TRUE
SQL>
SQL> ALTER SYSTEM SET SEC_CASE_SENSITIVE_LogoN = FALSE;
System altered.
SQL>
下面的代碼說明了密碼大小寫敏感的功能,首先,將SEC_CASE_SENSITIVE_LogoN初始化參數設置為TRUE,然後創建一個新用戶,其密碼包含大小寫字母。
CONN / AS SYSDBA
ALTER SYSTEM SET SEC_CASE_SENSITIVE_LogoN = TRUE;
CREATE USER test2 IDENTIFIED BY Test2;
GRANT CONNECT TO test2;
使用新創建的用戶正確的連接字符和大小寫錯誤的密碼進行連接嘗試,會看到大小寫敏感功能起作用了。
SQL> CONN test2/Test2
Connected.
SQL> CONN test2/test2
ERROR:
ORA-01017: invalid username/password; Logon denied
Warning: You are no longer connected to ORACLE.
SQL>
將SEC_CASE_SENSITIVE_LogoN初始化參數設置為FALSE後就不區分密碼大小寫了。