QueryContextAttributesW 関数 (sspi.h)
QueryContextAttributes (CredSSP) 関数を使用すると、トランスポート アプリケーションは、資格情報セキュリティ サポート プロバイダー (CredSSP) セキュリティ パッケージ に対して、セキュリティ コンテキストの特定の 属性 クエリを実行できます。
構文
KSECDDDECLSPEC SECURITY_STATUS SEC_ENTRY QueryContextAttributesW(
[in] PCtxtHandle phContext,
[in] unsigned long ulAttribute,
[out] void *pBuffer
);
パラメーター
[in] phContext
クエリを実行するセキュリティ コンテキストへのハンドル。
[in] ulAttribute
返されるコンテキストの属性。 このパラメーターには、次のいずれかの値を指定できます。 特に指定しない限り、属性はクライアントとサーバーの両方に適用されます。
価値 | 意味 |
---|---|
|
pBuffer パラメーターには、現在のセキュリティ コンテキストのアクセス トークンを指定する SecPkgContext_AccessToken 構造体へのポインターが含まれています。
この属性は、サーバーでのみサポートされます。 |
|
pBuffer パラメーターには、現在のセキュリティ コンテキストのアクセス トークンを指定する SecPkgContext_AccessToken 構造体へのポインターが含まれています。
この属性は、サーバーでのみサポートされます。 |
|
pBuffer パラメーターには、証明書に関する信頼情報を指定する CERT_TRUST_STATUS 構造体へのポインターが含まれています。
この属性は、クライアントでのみサポートされます。 |
|
pBuffer パラメーターには、クライアント資格情報を指定する SecPkgContext_ClientCreds 構造体へのポインターが含まれています。
クライアント資格情報には、ユーザー名とパスワード、またはユーザー名とスマート カード PIN のいずれかを指定できます。 この属性は、サーバーでのみサポートされます。 |
|
pBuffer パラメーターには、クライアント資格情報を指定する SecPkgContext_ClientCreds 構造体へのポインターが含まれています。
クライアント資格情報がユーザー名とパスワードの場合、バッファーはパックされた KERB_INTERACTIVE_LOGON 構造体です。 クライアント資格情報がユーザー名とスマート カード PIN の場合、バッファーはパックされた KERB_CERTIFICATE_LOGON 構造になります。 クライアント資格情報がオンライン ID 資格情報である場合、バッファーはマーシャリングされた SEC_WINNT_AUTH_IDENTITY_EX2 構造体です。 この属性は、CredSSP サーバーでのみサポートされます。 Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値はサポートされていません。 |
|
pBuffer パラメーターには、Microsoft Negotiate プロバイダーによってネゴシエートされる認証パッケージの名前を指定する SecPkgContext_PackageInfo 構造体へのポインターが含まれています。 |
|
pBuffer パラメーターには、SecPkgContext_PackageInfo 構造体へのポインターが含まれています。
使用中の SSP に関する情報を返します。 |
|
pBuffer パラメーターには、現在のセキュリティ コンテキストのフラグに関する情報を指定する SecPkgContext_Flags 構造体へのポインターが含まれています。
この属性は、クライアントでのみサポートされます。 |
|
pBuffer パラメーターには、SecPkgContext_Sizes 構造体へのポインターが含まれています。
メッセージごとの関数と認証交換で使用される構造体のサイズを照会します。 |
|
pBuffer パラメーターには、SecPkgContext_SubjectAttributes 構造体へのポインターが含まれています。
この値は、接続のセキュリティ属性に関する情報を返します。 この値は、CredSSP サーバーでのみサポートされます。 Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値はサポートされていません。 |
[out] pBuffer
属性を受け取る構造体へのポインター。 構造体の型は、ulAttribute パラメーターの値によって異なります。
戻り値
関数が成功すると、SEC_E_OKが返されます。
関数が失敗した場合は、次のエラー コードを返すことができます。
戻りコード/値 | 形容 |
---|---|
|
関数が失敗しました。 phContext パラメーターは、不完全なコンテキストへのハンドルを指定します。 |
|
関数が失敗しました。 ulAttribute パラメーターの値が無効です。 |
備考
pBuffer パラメーターが指す構造体は、クエリ対象の属性によって異なります。
呼び出し元は pBuffer 構造体自体を割り当てる必要があります。一方、SSP は、pBuffer 構造体の可変サイズのメンバーを保持するために必要なメモリを割り当てます。 SSP によって割り当てられたメモリは、FreeContextBuffer 関数を呼び出すことによって解放する必要があります。
手記
sspi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして QueryContextAttributes を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2008 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | sspi.h (Security.h を含む) |
ライブラリ | Secur32.lib |
DLL | Secur32.dll |
関連項目
FreeContextBuffer の