When Sec_case_sensitive_logon = True, how do I enable mixed-case passwords?
From:
How to enforce Mixed case passwords when Sec_case_sensitive_logon = true? (Document ID 1307555.1)
Suitable for:
Oracle server-enterprise edition-version 11.1.0.6 to 11.2.0.2 [Release 11.1 to 11.2]
Information in this document applies to any platform.
Checked for relevance on 20-sep-2012***
Goal:
How to enable mixed-case passwords for user in database after setting Sec_case_sensitive_logon = True
Solution:
The supplied password verify function in the file $ORACLE _home/rdbms/admin/utlpwdmg.sql does isn't enforce that the PASSWO RD have both upper and lower case characters. To achieve this, it's possible to modify the function as follows:
CP Utlpwdmg.sql Utlpwdmg_modif.sql
VI Utlpwdmg_modif.sql
ADD the following code:
--Check The password uses mixed Caseif upper (password) = password or lower (password) = password Thenraise_application_err or ( -20012, ' Password is not mixed case '); End if;
Then run the script Utlpwdmg_modif.sql as user SYS and to test:
Create profile Test_profile limit password_verify_function verify_function_11g; Create user test identified by test profile Test_profile; Connect test/test sql> alter user test identified by "kachel1#" replace test; Alter user test identified by "kachel1#" replace Test * ERROR @ Line 1:ora-28003:password verification for the Specifie D Password failed Ora-20012:password is not mixed case sql> alter user test identified by "kachel1#" replace test; Alter user test identified by "kachel1#" replace Test * ERROR @ Line 1:ora-28003:password verification for the Specifie D Password failed Ora-20012:password is not mixed case sql> alter user test identified by "kachel1#" replace test; User altered.
"Translated from MoS article" when Sec_case_sensitive_logon = true, how do I enable mixed-case passwords?