Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » データベースの起動とデータベースへの接続 » 接続パラメータとネットワーク・プロトコル・オプション » 接続パラメータ

 

NewPassword 接続パラメータ [NEWPWD]

パスワードの有効期限が切れている場合でも、DBA の介入を必要とせずユーザが各自でパスワードを変更できます。

使用法

特に制限なし。新しいパスワードの入力を要求するクライアント・ライブラリは、Microsoft Windows でのみサポートされます。

文字列、*

デフォルト

パスワードは変更されず、クライアント・ライブラリは新しいパスワードを要求しません。

備考

この接続パラメータは、password_life_time オプションや password_expiry_on_next_login オプションを使用してログイン・ポリシーを実装する場合に非常に便利です。また、login_procedure で「パスワードの有効期限が切れています。」というエラーを伝えることで、パスワードの有効期限ポリシーを実装することもできます。

ユーザが新しいパスワードを入力すると、データベース・サーバはユーザ ID とパスワードの認証を実行し、login_procedure オプションが呼び出される前にパスワードを変更しようとします。このプロセスにより、ユーザは DBA の介入なく有効期限の切れたパスワードを変更できるようになります。verify_password_function オプションを設定した場合は、新しいパスワードの検証が行われます。統合化ログインや Kerberos ログインで認証を実行する場合、元のパスワードは検証されず、データベース・サーバは新しいパスワード値を無視し、パスワードは変更されません。

Microsoft Windows の場合、特別値 * を使用すると、既存のパスワードの有効期限が切れている場合にかぎり、クライアント・ライブラリは新しいパスワードの入力を要求します。ユーザは既存のパスワードと新しいパスワードを入力し、さらに確認のために新しいパスワードをもう一度入力する必要があります。ユーザがフィールドに値を入力して [OK] をクリックすると、古いパスワードが認証され、データベース・サーバはパスワードを変更しようとします。verify_password_function オプションを設定した場合は、新しいパスワードの検証が行われます。ユーザのパスワードの有効期限切れを確認し、新しいパスワードの入力を要求し、パスワードの認証と変更を行うプロセスは、クライアント・ライブラリに対する 1 回の接続呼び出しで実行されます。

動作環境でパスワードの入力要求がサポートされていない場合、ユーザは「パスワードの有効期限が切れています。」というエラーを受信します。Microsoft Windows 環境の場合、呼び出し元のアプリケーションに最上位レベルのウィンドウが複数あったり、最小化されている場合、プロンプト・ウィンドウでは呼び出し元のアプリケーション・ウィンドウとの対話を正しく防げない (モーダルでなくなったり、正しい親ウィンドウがない) ことがあります。

Windows 環境では、ODBC SQLDriverConnect 関数を使用していて DriverCompletion 引数が SQL_DRIVER_NOPROMPT 以外に設定されている場合、パスワードの有効期限が切れていると、接続時に新しいパスワードの入力を要求されます。DBPROP_INIT_PROMPT プロパティが DBPROMPT_NOPROMPT 以外に設定されている場合、OLE DB で接続時に新しいパスワードの入力を要求されることがあります。いずれの場合も、接続パラメータ NewPassword=* が指定されているように動作します。

参照

次の接続文字列では、接続時にユーザ Test1 のパスワードを変更します。

"UID=Test1;PWD=welcome;NEWPWD=hello"

Windows 環境の場合、次の接続文字列では、既存のパスワードの有効期限が切れている場合に、ユーザ Test1 に新しいパスワードの入力を要求します。

"UID=Test1;PWD=welcome;NEWPWD=*"