#topicpath 11gでは大文字と小文字を区別することもできますという設定です。 * 初期化パラメータの設定 [#j1ba0c66] [[セキュリティガイド:http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/network.111/E05730-05/toc.htm]] を見ます。 「パスワードでの大/小文字の区別の有効化または無効化」にあるように設定しますが、 すでに設定されていました。 #pre{{ SQL> show parameter sec_case_sensitive_logon NAME TYPE ------------------------------------ --------------------------------- VALUE ------------------------------ sec_case_sensitive_logon boolean TRUE SQL> }} もし FALSE になっていれば TRUE にします。 #pre{{ SQL> alter system set sec_case_sensitive_logon = TRUE; システムが変更されました。 SQL> }} * デフォルトプロファイルの設定 [#gfb26f65] [[SQLリファレンス:http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/server.111/E05750-03/statements_2.htm]] で ALTER PROFILE を見てみます。 > ALTER PROFILE '''profile''' LIMIT '''password_parameters'''; ということで、'''password_parameters''' から見ると このあたりが当てはまります。 > ALTER PROFILE '''profile''' LIMIT > PASSWORD_VERIFY_FUNCTION '''function'''; それでこの '''function''' というのは何ぞやというのは マニュアルからはなかなか見つけられません。 $ORACLE_HOME/rdbms/admin/*.sql から探してみます。 #pre{{ [oracle@ora1 1_Basic]$ cd $ORACLE_HOME/rdbms/admin [oracle@ora1 admin]$ grep -i password_verify_function *.sql catmeta.sql: p.type_num =1 ), -- PASSWORD_VERIFY_FUNN catmeta.sql:-- PASSWORD_VERIFY_FUNCTION catmeta.sql: ('PASSWORD_VERIFY_FUNCTION',0, 16,'ORACLE', 0801000000, catmeta.sql: ('ORACLE','DDL','PASSWORD_VERIFY_FUNCTION','DUMMY','0',0,NULL,1,NU; catmeta.sql:-- PASSWORD_VERIFY_FUNCTION parse items catmeta.sql: ('ORACLE','PARSE','PASSWORD_VERIFY_FUNCTION','PRS_OBJECT_TYPE','0', catmeta.sql: '''PASSWORD_VERIFY_FUNCTION''',NULL,NULL,NULL); catmeta.sql:-- PASSWORD_VERIFY_FUNCTION parse items (internal) catmeta.sql: ('ORACLE','PARSE','PASSWORD_VERIFY_FUNCTION','PRS_GRANTOR','0',0, utlpwdmg.sql:Rem asurpur 12/12/96 - Changing the name of password_verifyn utlpwdmg.sql:PASSWORD_VERIFY_FUNCTION verify_function_11G; utlpwdmg.sql:-- PASSWORD_VERIFY_FUNCTION verify_function; [oracle@ora1 admin]$ }} catmeta.sql と utlpwdmg.sql が見つかりましたが、 utlpwdmg.sql を使います。 このスクリプトでは - CREATE OR REPLACE FUNCTION verify_function_11G - ALTER PROFILE DEFAULT LIMIT ... PASSWORD_VERIFY_FUNCTION verify_function_11G - CREATE OR REPLACE FUNCTION verify_function の3つの処理をやっているのがわかります。 そのまま実行すると 11g でのパスワードポリシーになるんですね。 #pre{{ [oracle@ora1 admin]$ sqlplus sys/oracle@orcl as sysdba @utlpwdmg SQL*Plus: Release 11.2.0.1.0 Production on 土 9月 19 17:38:52 2009 Copyright (c) 1982, 2009, Oracle. All rights reserved. Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options に接続されました。 ファンクションが作成されました。 プロファイルが変更されました。 ファンクションが作成されました。 SQL> }} ---- #comment