11gで大きく変わったセキュリティ関連の設定は3つ 1)Auditの監査設定が標準設定されている 2)プロファイルのDEFALUTの設定が強固に 3)パスワードの大文字小文字を区別するようになった 今回は3)パスワードの大文字小文字を区別するようになった 11gからパスワードの大文字小文字を区別するようになりました。 それにより何が起きるかというと、、 ======================================================= DBのアップグレードは完了したし、 アプリケーションから接続してみるか。 まぁ、アプリケーションは現行のままだから 問題ないだろうけどなっと♪ ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。 って、、ありりりり? ======================================================= の原因がパスワードの大文字小文字の仕様変更。 ・・・ 11g以前のリリースでは、パスワードは「原則」大文字小文字の区別はされませんでした。 "で囲ってユーザを作ってしまい、小文字として認識されている環境もありましたが、 Oracleはやっちゃ駄目だと言ってきました。(基本は駄目。) でも、このご時世、パスワードは大文字小文字を組み合わせた、 複雑なものがいいよねってことで、 11gからパスワードの大文字小文字が区別されるようになりました。 そんなこんなで、既存のプログラムのコネクション時のパスワードが小文字、 ユーザ作成時はパスワードに大文字をしていたとか、またその逆とかだと、 上記のような問題が発生したります。 じゃ、いちからプログラムを見直せってのかよ?! ってこともあるわけもなくて、 以前のように大文字小文字区別しないようにするには、 以下のパラメータの設定を変更します。 初期化パラメータ:sec_case_sensitive_logon このパラメータは11gからの初期化パラメータになります。 デフォルトだと以下のようにTRUEになっているので、 FALSEに変更すれば、大文字小文字区別しないようになります。 動的変更が可能なパラメータなので楽ちんです。 ============================================================== SQL> show parameter sec_case_sensitive_logon NAME TYPE VALUE ------------------------ ----------- ------------------------- sec_case_sensitive_logon boolean TRUE SQL> conn scott/TIGER ERROR: ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。 警告: Oracleにはもう接続されていません。 SQL> conn system/XXXX 接続されました。 SQL> alter system set sec_case_sensitive_logon=FALSE scope=both; システムが変更されました。 SQL> show parameter sec_case_sensitive_logon NAME TYPE VALUE ------------------------ ----------- ------------------------- sec_case_sensitive_logon boolean FALSE SQL> conn scott/TIGER 接続されました。 ============================================================== まとめです、 11gではデフォルト設定のままだと、パスワードの大文字小文字が区別されます。 簡単に戻せるし、特に言うことないですね。 大切なのは、このようなアップグレード時の仕様変更を把握して、 自分のシステムではどのように対処するかということ。 折角、パスワードの大文字小文字を指定出来るようになったのだから、 アップグレードを機にパスワードを強化してみるのもいいですよね。 つづきはこちら
2012年2月11日土曜日
Oracle Database 11g の標準セキュリティ設定について#3
前回はこちら
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿