Windows認証でNTLMがデフォルトで使用されなくなった
AUTHENTICATION_SERVICES=NTS
を使用したMicrosoft Windowsインストールでは、このOracle Databaseリリースでsqlnet.ora
ファイルのSQLNET.NO_NTLM
パラメータの設定がデフォルトでTRUE
になり、ORA-12638エラーが発生する可能性があります。
日付: 2023年8月
以前のリリースでは、AUTHENTICATION_SERVICES=NTS
のデフォルトはFALSE
でした。SQLNET.NO_NTLM
は、NTS認証でNTLMを使用できるかどうかを制御します。TRUE
設定が、NTS認証でNTLMを使用できないことを意味します。NTLMは、通常、相互認証を提供せず安全性が低くなるため、SQLNET.NO_NTLM
にTRUE
を設定すると、データベースとクライアントがよりセキュアになります。
SQLNET.NO_NTLM
パラメータは、サーバーとクライアントの両方で使用されます。SQLNET.NO_NTLM
が設定されていないOracleデータベースまたはクライアントのMicrosoft Windowsインストールをアップグレードした場合、デフォルトはTRUE
になります。この場合、sqlnet.ora
にSQLNET.AUTHENTICATION_SERVICES=NTS
があると、クライアントでエラーORA-12638: Credential retrieval failed
が発生する可能性があります。
特定のクライアントに対してNTLM認証を使用する場合は、クライアント側のsqlnet.ora
ファイルで必要に応じてこのパラメータを設定します。
SQLNET.NO_NTLM=FALSE
この設定はサーバーとクライアントの両方に含める必要があり、両方で同じ設定になっている必要があります。SQLNET.NO_NTLM
がTRUE
に設定されていることを確認することをお薦めします。ただし、extproc
、仮想アカウントまたはWindowsのローカル・アカウントで認証に失敗した場合は、クライアントSQLNET.NO_NTLM
をFALSE
に設定してからログインを再試行してください。サーバーのSQLNET.NO_NTLM
を変更した場合は、データベースを再起動する必要があります。