Win32 API 日本語リファレンス
ホーム › NetworkManagement.WNet › PF_NPPasswordChangeNotify

PF_NPPasswordChangeNotify

コールバック

シグネチャ

DWORD PF_NPPasswordChangeNotify(
    LPWSTR lpAuthentInfoType,
    void* lpAuthentInfo,
    LPWSTR lpPreviousAuthentInfoType,
    void* lpPreviousAuthentInfo,
    LPWSTR lpStationName,
    void* StationHandle,
    DWORD dwChangeInfo
);

パラメーター

フィールド型説明
lpAuthentInfoTypeLPWSTR

lpAuthentInfo が指す構造体の型を識別する文字列へのポインターです。

Microsoft がプライマリ認証機関である場合、対話型ログオンおよびサービス コントローラー ログオンに対して次の文字列が指定されます。

MSV1_0:Interactive 
Kerberos:Interactive
lpAuthentInfovoid*

新しい資格情報を格納する構造体へのポインターです。

Microsoft がプライマリ認証機関である場合(つまり lpAuthentifoType が "MSV1_0:Interactive" または "Kerberos:Interactive" の場合)、使用される構造体は MSV1_0_INTERACTIVE_LOGON または KERB_INTERACTIVE_LOGON です。

lpPreviousAuthentInfoTypeLPWSTR

lpPreviousAuthentInfo が指す構造体の型を識別する文字列へのポインターです。このポインターが NULL の場合、以前の情報はありません。ここで想定される値は lpAuthentInfoType と同じです。

Microsoft がプライマリ認証機関である場合、対話型ログオンおよびサービス コントローラー ログオンに対して次の文字列が指定されます。

MSV1_0:Interactive
lpPreviousAuthentInfovoid*

認証情報の変更前に使用されていた資格情報を格納する構造体へのポインターです。ユーザーがログオン前にパスワード(またはその他の認証情報)の変更を強制された場合には、以前の情報が提供されます。ユーザーが認証情報の変更を強制されなかった場合、このポインターは NULL です。ここで想定される値は lpAuthentInfo と同じです。

Microsoft がプライマリ認証機関である場合、使用される構造体は MSV1_0_INTERACTIVE_LOGON または KERB_INTERACTIVE_LOGON です。

lpStationNameLPWSTR

ユーザーがログオンしたステーションの名前を指定する文字列へのポインターです。ステーション名は、プロバイダー固有の追加情報を取得できるかどうかを判断するために使用できます。

Microsoft がプライマリ認証機関である場合、次のいずれかの文字列が指定されます。

値 意味
WinSta_0
これがウィンドウ ステーションを介した対話型ログオンであることを示します。この場合、StationHandle は親ダイアログ ボックスへの HWND です。
SvcCtl
これがサービス コントローラーによって開始されたログオンであることを示します。この場合、StationHandle は使用されません。
StationHandlevoid*

lpStationName で指定されたステーションの名前(およびそれに伴う種類)によって意味が決まる 32 ビット値です。

値 意味
WinSta_0
現在画面に表示されている所有者ダイアログ ボックス (hwndOwner) へのハンドルです。
SvcCtl
ランダムなデータです。使用しないでください。
dwChangeInfoDWORD

設定されている場合、変更情報を示すフラグを指定します。このパラメーターには、次のいずれかのフラグを指定できます。

値 意味
WN_VALID_LOGON_ACCOUNT
このフラグは、変更された認証情報が以降のすべてのログオンに影響することを示します。ユーザーは信頼されたドメインに属しています。
WN_NT_PASSWORD_CHANGED
このフラグは、パスワードが変更されたことを示します。

認証情報の変更の中には、信頼されていないドメインで行われた接続にのみ影響するものがあります。これらは、いずれにせよユーザーがこのコンピューターへのログオンに使用できないアカウントです。この場合、dwChangeInfo は設定されません。

公式ドキュメント

メモ

この API は非推奨であり、将来のリリースで削除されます。

MPR は、パスワード変更イベントを資格情報マネージャーに通知するために、この関数を呼び出します。NPPasswordChangeNotify 関数は、資格情報マネージャー DLL によって実装されます。

戻り値

関数が成功した場合、WN_SUCCESS を返します。

関数が失敗した場合はエラー コードを返します。これは次のいずれかの値になります。

リターン コード 説明
WN_NOT_SUPPORTED

NPPasswordChangeNotify はサポートされていません。

WN_NO_NETWORK
ネットワークが存在しません。
WN_FUNCTION_BUSY
資格情報マネージャーはまだ初期化中で、呼び出せる状態ではありません。

解説(Remarks)

NPPasswordChangeNotify 関数は、認証情報が変更されたときに通知を受け取るために、資格情報マネージャーによって実装されます。

Windows Server 2003 および Windows XP: パスワードが他の場所で変更された場合、ユーザーがログオンしようとしているコンピューター上で NPPasswordChangeNotify が呼び出されます。ただし、この動作は Windows Vista および Windows Server 2008 以降ではサポートされていないことに注意してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)