CredGetTargetInfoA 関数 (wincred.h)

CredGetTargetInfo 関数は、名前付きターゲット コンピューターのすべての既知のターゲット名情報を取得します。 これはローカルで実行され、特定の特権は必要ありません。 返される情報は、 CredReadDomainCredentials 関数と CredWriteDomainCredentials 関数に渡されることが 想定されています。 この情報は、他の目的には使用しないでください。

認証パッケージは 、TargetName に対する認証を試みると TargetInfo を計算します。 認証パッケージは、このターゲット情報をキャッシュして CredGetTargetInfo で使用できるようにします。 したがって、ターゲット情報は、 TargetName を認証する最近の試行からのみ使用できます。

LSA プロセスに含まれていない認証パッケージは、CRED_CACHE_TARGET_INFORMATION フラグを使用して CredReadDomainCredentials を呼び出すことで、CredGetTargetInfo による後の取得のために TargetInfo をキャッシュできます。

構文

BOOL CredGetTargetInfoA(
  [in]  LPCSTR                          TargetName,
  [in]  DWORD                           Flags,
  [out] PCREDENTIAL_TARGET_INFORMATIONA *TargetInfo
);

パラメーター

[in] TargetName

情報を取得するターゲット コンピューターの名前を含む null で終わる文字列へのポインター。

[in] Flags

関数の操作を制御するフラグ。 次のフラグを使用できます。

CRED_ALLOW_NAME_RESOLUTION

TargetName の名前解決のターゲット情報が見つからない場合は、TargetName で他のフォームに変換します。 他のフォームのいずれかにターゲット情報が存在する場合は、その情報が返されます。 現在、DNS 名解決のみが行われています。

これは、アプリケーションが認証パッケージを直接呼び出さない場合に便利です。 アプリケーションは TargetName を別のソフトウェア層に渡してサーバーに対する認証を行うことができます。そのソフトウェアのレイヤーは名前を解決し、解決された名前を認証パッケージに渡す場合があります。 そのため、元の TargetName のターゲット情報はありません。

[out] TargetInfo

ターゲット情報を格納する 1 つの割り当て済みブロック バッファーへのポインター。 TargetInfo の返されるメンバーの少なくとも 1 つが NULL 以外になります。 バッファー内に含まれるポインターは、この 1 つの割り当て済みブロック内の場所へのポインターです。 返される 1 つのバッファーは、 CredFree を呼び出すことによって解放する必要があります。

戻り値

関数は、成功した場合は TRUE 、失敗した場合は FALSE を 返します。 GetLastError 関数を呼び出して、より具体的な状態コードを取得できます。 次の状態コードを返すことができます。

  • ERROR_NOT_FOUND

    名前付きサーバーのターゲット情報は使用できません。

注釈

注意

wincred.h ヘッダーは CredGetTargetInfo をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー wincred.h
Library Advapi32.lib
[DLL] Advapi32.dll

こちらもご覧ください

CredFree

CredReadDomainCredentials

CredWriteDomainCredentials

GetLastError