パスワードの大/小文字の区別およびORA-1017無効なユーザー名またはパスワード
Oracle Database 12cリリース2 (12.2)のデフォルトの認証プロトコルは12
(排他モード)です。このプロトコルでは認証に大/小文字のパスワードが必要です。以前のリリースのパスワード・バージョンがある場合は、オプションを確認してください。
Oracle Database 12cリリース2 (12.2)以降、SQLNET.ORAパラメータALLOWED_LOGON_VERSION_SERVERのデフォルト値は12
に変更されました。このパラメータはOracle Databaseリリースにではなく、サーバーに使用されるログオン認証プロトコルのことです。
デフォルトで、Oracleでは大/小文字を区別しないパスワードに基づく認証はもうサポートせず、新しいパスワード・バージョン(11G
および12C
)のみ使用できます。大/小文字を区別しない10G
のパスワード・バージョンはもう生成されません。
次の条件が当てはまる場合は、12.2へのアップグレード後にデータベースにログインできないアカウントがある可能性があります。
-
以前のOracle Databaseリリースで作成されたユーザー・アカウントがあるサーバーをアップグレードしている。
-
以前のリリースで作成されたユーザー・アカウントでは、以前のリリースの認証プロトコルの大/小文字を区別しないパスワード・バージョン(
10G
パスワード・バージョンなど)を使用している。 -
以前のリリースのユーザー・アカウントでパスワードを再設定していない。
-
サーバーは、SEC_CASE_SENSITIVE_LOGONをFALSEに設定して構成されているため、
10G
の大/小文字の区別のないパスワード・バージョンを持つユーザーだけを認証できる。
10G
パスワード・バージョンが必要なアカウントがある場合は、そのパスワードを使用しているアカウントがデータベースでロックされないように、排他モードではなく、より許容度の高い認証プロトコルに変更できます。
注意:
排他モードで実行している間は、大/小文字を区別しないパスワードに基づく認証はサポートされません。Oracle Database 12cリリース2 (12.2)のデフォルトの認証プロトコルは排他モードです。Oracleでは次の条件付きでのみ、大/小文字の区別のない認証をサポートしています。
-
サーバーが排他モード以外のモードで実行されている
-
10G
パスワード・バージョンがある
10Gパスワード・バージョンのみを使用したアカウントがあるサーバーのオプション
10G
パスワード・バージョンを使用したアカウントを有効にするには、Oracle Database 12cリリース2 (12.2)にアップグレードした後で次の手順を実行します。
-
管理者としてログインします。
-
SQLNET.ORAファイルを編集して、SQLNET.ALLOWED_LOGON_VERSION_SERVER設定をデフォルトの
12
から、11
以下に変更します。次に例を示します。SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
より許容度の高いSQLNET.ALLOWED_LOGON_VERSION_SERVER設定に変更したら、ユーザーがパスワードを変更する必要が発生するように、そうしたユーザーのパスワードを期限切れにします。詳細は、『Oracle Databaseセキュリティ・ガイド』を参照してください。