Win32 API 日本語リファレンス
ホーム › Security.Authentication.Identity › SpQueryMetaDataFn

SpQueryMetaDataFn

コールバック

シグネチャ

NTSTATUS SpQueryMetaDataFn(
    UINT_PTR CredentialHandle,
    LSA_UNICODE_STRING* TargetName,
    DWORD ContextRequirements,
    DWORD* MetaDataLength,
    BYTE** MetaData,
    UINT_PTR* ContextHandle
);

パラメーター

フィールド型説明
CredentialHandleUINT_PTR

セキュリティ コンテキストで使用する資格情報へのハンドル。入力時に ContextHandle パラメーターが NULL を指している場合、この関数はこのパラメーターの値を使用してセキュリティ コンテキストを作成します。

入力時に ContextHandle パラメーターが NULL を指している場合、このパラメーターの値を NULL にすることはできません。

TargetNameLSA_UNICODE_STRING*コンテキストのターゲット名を格納する UNICODE_STRING へのポインター。
ContextRequirementsDWORD

クライアントが必要とするコンテキスト属性を示すフラグ。

有効な値は次のとおりです。値は論理 OR 演算によって組み合わせることができます。

値 意味
ISC_REQ_DELEGATE
サーバーはクライアントを偽装できます。
ISC_REQ_MUTUAL_AUTH
クライアントとサーバーの両方が、自身の ID を証明する必要があります。
ISC_REQ_REPLAY_DETECT
セキュリティ コンテキストは、再生されたパケットの検出をサポートします。
ISC_REQ_SEQUENCE_DETECT
セキュリティ コンテキストは、順序が正しくないメッセージの検出をサポートします。
ISC_REQ_USE_SESSION_KEY
新しいセッション キーをネゴシエートする必要があります。
ISC_REQ_PROMPT_FOR_CREDS
クライアントが対話型ユーザーである場合、パッケージは可能であれば適切な資格情報の入力をユーザーに求める必要があります。
ISC_REQ_USE_SUPPLIED_CREDS
入力バッファーには、接続の認証に使用するパッケージ固有の資格情報が格納されています。
ISC_REQ_ALLOCATE_MEMORY
パッケージがメモリを割り当てる必要があります。呼び出し元は、パッケージが割り当てたメモリを解放するために、最終的に FreeContextBuffer 関数を呼び出す必要があります。
ISC_REQ_USE_DCE_STYLE
呼び出し元は 3 レグの相互認証トランザクションを想定しています。
ISC_REQ_DATAGRAM
データグラム型の通信チャネルを使用します。詳細については、 データグラム コンテキストを参照してください。
ISC_REQ_CONNECTION
接続型の通信チャネルを使用します。詳細については、 コネクション指向コンテキストを参照してください。
ISC_REQ_EXTENDED_ERROR
コンテキストが失敗した場合は、クライアントに返送するエラー応答メッセージを生成します。
ISC_REQ_STREAM
ストリーム型の通信チャネルを使用します。詳細については、 ストリーム コンテキストを参照してください。
ISC_REQ_INTEGRITY
バッファーの整合性が検証されます。ただし、再生されたメッセージや順序が正しくないメッセージは検出されません。
MetaDataLengthDWORD*MetaData バッファーのサイズ (文字数)。
MetaDataBYTE**SSP が提供するメタデータ。
ContextHandleUINT_PTR*

使用するセキュリティ ハンドルへのハンドル。入力時にこのパラメーターが NULL を指している場合、この関数は CredentialHandle パラメーターおよび TargetName パラメーターの値を使用して、セキュリティ コンテキストを割り当てて初期化します。

入力時にこのパラメーターが NULL を指している場合、CredentialHandle を NULL にすることはできません。

公式ドキュメント

セキュリティ サポート プロバイダー (SSP) がセキュリティ コンテキストを開始するときに、SSP からメタデータを取得します。

戻り値

関数が成功した場合は、STATUS_SUCCESS または情報を示すステータス コードを返します。

関数が失敗した場合は、失敗した理由を示す NTSTATUS エラー コードを返します。詳細については、「解説」を参照してください。

解説(Remarks)

SpQueryMetaDataFn 関数へのポインターは、 SpLsaModeInitialize 関数から受け取る SECPKG_FUNCTION_TABLE 構造体で取得できます。

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