2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

[23c] Oracle : パスワードの大文字小文字区別はどうなった?

Last updated at Posted at 2023-11-09

確認したこと

Oracle Database 23c でも、DBユーザのパスワード大文字小文字区別をなくすことは可能なのか?

環境

<2023/4(正式リリース前のベータ版)>
・Oracle Linux 8.8
・Oracle Database 23c Free (Developer Release)

<2023/9(正式リリースされたCloud版)>
・Oracle Database 23c Enterprise Edition (Oracle Cloud)

23cまでの経緯

19c:DBユーザのパスワード大文字小文字区別なしは非推奨。
   初期化パラメータ「sec_case_sensitive_logon」を「false」に変更することで
   区別なしにすることができた。

21c:DBユーザのパスワード大文字小文字区別なしは非サポート。

23c:21c時点ですでに非サポートのため、
   継続してDBユーザのパスワード大文字小文字区別なしは非サポート。
   区別なしには設定できない

実機確認

Oracle Database 23c Free (Developer Release)

[oracle@host01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 23.0.0.0.0 - Developer-Release on 木 11月 9 08:48:34 2023
Version 23.2.0.0.0

Copyright (c) 1982, 2023, Oracle.  All rights reserved.



Oracle Database 23c Free, Release 23.0.0.0.0 - Developer-Release
Version 23.2.0.0.0
に接続されました。

★19cで使用できたsec_case_sensitive_logonパラメータが存在するかを確認。
★存在しなかった

SQL> show parameter sec

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_securefile                        string      PREFERRED
optimizer_secure_view_merging        boolean     TRUE
sec_max_failed_login_attempts        integer     3
sec_protocol_error_further_action    string      (DROP,3)
sec_protocol_error_trace_action      string      TRACE
sec_return_server_release_banner     boolean     FALSE
sql92_security                       boolean     TRUE

★存在しなくても設定しようとすると、廃止されたというエラーがでた

SQL> alter system set  SEC_CASE_SENSITIVE_LOGON=false;
alter system set  SEC_CASE_SENSITIVE_LOGON=false
*
行1でエラーが発生しました。:
ORA-25138: SEC_CASE_SENSITIVE_LOGON初期化パラメータは廃止されています。

★ユーザ作成できた。(パスワードは小文字の a とした)
SQL> create user c##test identified by a;

ユーザーが作成されました。

SQL> grant create session to c##test;

権限付与が成功しました。

★接続確認。パスワードは小文字のaに設定しているため、問題なく接続できた
SQL> connect c##test/a
接続されました。

★接続確認。パスワードを大文字で指定すると、エラーになった。
SQL> connect c##test/A
ERROR:
ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。


警告: Oracleにはもう接続されていません。
SQL>

 
Oracle Database 23c Enterprise Edition (Oracle Cloud)

[oracle@db23c ~]$ sqlplus / as sysdba

SQL*Plus: Release 23.0.0.0.0 - Production on Thu Nov 9 14:05:55 2023
Version 23.3.0.23.09

Copyright (c) 1982, 2023, Oracle.  All rights reserved.


Connected to:
Oracle Database 23c EE High Perf Release 23.0.0.0.0 - Production
Version 23.3.0.23.09

★オンプレFree版と同じように、sec_case_sencitive_logonパラメータは存在しない
SQL> show parameter sec

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_securefile                        string      PREFERRED
optimizer_secure_view_merging        boolean     TRUE
sec_max_failed_login_attempts        integer     3
sec_protocol_error_further_action    string      (DROP,3)
sec_protocol_error_trace_action      string      TRACE
sec_return_server_release_banner     boolean     FALSE
sql92_security                       boolean     TRUE
SQL>

★無理やり指定しようとすると、パラメータは廃止されたというエラー
★ちなみに23cのエラーメッセージは、エラーマニュアルへのリンクが表示されます。
★エラーが少し具体的になって嬉しい

SQL> alter system set sec_case_sensitive_logon=false;
alter system set sec_case_sensitive_logon=false
*
ERROR at line 1:
ORA-25138: SEC_CASE_SENSITIVE_LOGON initialization parameter has been made
obsolete
Help: https://docs.oracle.com/error-help/db/ora-25138/

★オンプレFree版で実行できたSQLはエラーになる
★OCI版ではパスワードの複雑性ルールが有効になっている

SQL> create user c##test identified by a;
create user c##test identified by a
*
ERROR at line 1:
ORA-28003: The password chosen did not meet the required complexity rules set
by your organization.
ORA-20000: password length less than 9 characters
Help: https://docs.oracle.com/error-help/db/ora-28003/

★大文字小文字特殊文字数値2文字ずつで、合計9文字以上で作成できた

SQL> create user c##test identified by aaAA##11a;

User created.

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?