CredGetTargetInfoW 関数 (wincred.h)
CredGetTargetInfo 関数は、名前付きターゲット コンピューターのすべての既知のターゲット名情報を取得します。 これはローカルで実行され、特定の特権は必要ありません。 返される情報は、 CredReadDomainCredentials 関数と CredWriteDomainCredentials 関数に渡されることが想定されています 。 この情報は、他の目的には使用しないでください。
認証パッケージは 、TargetName に対する認証を試みるときに TargetInfo を計算します。 認証パッケージは、このターゲット情報をキャッシュして CredGetTargetInfo で使用できるようにします。 したがって、ターゲット情報は、 TargetName を認証する最近の試行からのみ使用できます。
LSA プロセスに含まれていない認証パッケージは、CRED_CACHE_TARGET_INFORMATION フラグを使用して CredReadDomainCredentials を呼び出すことによって、CredGetTargetInfo によって後で取得するために TargetInfo をキャッシュできます。
構文
BOOL CredGetTargetInfoW(
[in] LPCWSTR TargetName,
[in] DWORD Flags,
[out] PCREDENTIAL_TARGET_INFORMATIONW *TargetInfo
);
パラメーター
[in] TargetName
情報を取得するターゲット コンピューターの名前を含む null で終わる文字列へのポインター。
[in] Flags
関数の操作を制御するフラグ。 次のフラグを使用できます。
CRED_ALLOW_NAME_RESOLUTION
TargetName で TargetName 名解決のターゲット情報が見つからない場合は、それを他のフォームに変換します。 その他の形式のターゲット情報が存在する場合は、その情報が返されます。 現在、DNS 名解決のみが行われています。
これは、アプリケーションが認証パッケージを直接呼び出さない場合に便利です。 アプリケーションは TargetName を別のソフトウェア層に渡してサーバーに対する認証を行うことができます。また、ソフトウェアのレイヤーによって名前が解決され、解決された名前が認証パッケージに渡される場合があります。 そのため、元の TargetName のターゲット情報はありません。
[out] TargetInfo
ターゲット情報を格納するために割り当てられた単一のブロック バッファーへのポインター。 TargetInfo の返されるメンバーのうち、少なくとも 1 つは NULL 以外になります。 バッファー内に含まれるポインターは、この 1 つの割り当てられたブロック内の場所へのポインターです。 CredFree を呼び出して、返される単一のバッファーを解放する必要があります。
戻り値
関数は、成功した場合は TRUE を返し、失敗した場合は FALSE を 返します。 GetLastError 関数を呼び出して、より具体的な状態コードを取得できます。 次の状態コードを返すことができます。
- ERROR_NOT_FOUND
名前付きサーバーのターゲット情報は使用できません。
解説
注意
wincred.h ヘッダーは CredGetTargetInfo をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | wincred.h |
Library | Advapi32.lib |
[DLL] | Advapi32.dll |