QueryContextAttributes (CredSSP) 関数
QueryContextAttributes (CredSSP) 関数を使用すると、トランスポート アプリケーションは、セキュリティ コンテキストの特定の属性について資格情報セキュリティ サポート プロバイダー (CredSSP) セキュリティ パッケージに対してクエリを実行できます。
構文
SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
_In_ PCtxtHandle phContext,
_In_ ULONG ulAttribute,
_Out_ PVOID pBuffer
);
パラメーター
-
phContext [in]
-
クエリを実行するセキュリティ コンテキストへのハンドル。
-
ulAttribute [in]
-
返されるコンテキストの属性。 このパラメーターには、次の値のいずれかを指定できます。 特に指定がない限り、属性はクライアントとサーバーの両方に適用されます。
値 説明 - SECPKG_ATTR_C_ACCESS_TOKEN
- 0x80000012
pBuffer パラメーターには、現在のセキュリティ コンテキストのアクセス トークンを指定するSecPkgContext_AccessToken構造体へのポインターが含まれています。
この属性は、サーバーでのみサポートされます。- SECPKG_ATTR_C_FULL_ACCESS_TOKEN
- 0x80000082
pBuffer パラメーターには、現在のセキュリティ コンテキストのアクセス トークンを指定するSecPkgContext_AccessToken構造体へのポインターが含まれています。
この属性は、サーバーでのみサポートされます。- SECPKG_ATTR_CERT_TRUST_STATUS
- 0x80000084
pBuffer パラメーターには、証明書に関する信頼情報を指定するCERT_TRUST_STATUS構造体へのポインターが含まれています。
この属性は、クライアントでのみサポートされます。- SECPKG_ATTR_CREDS
- 0x80000080
pBuffer パラメーターには、クライアント資格情報を指定するSecPkgContext_ClientCreds構造体へのポインターが含まれています。
クライアント資格情報には、ユーザー名とパスワード、またはユーザー名とスマート カード PIN のいずれかを指定できます。
この属性は、サーバーでのみサポートされます。- SECPKG_ATTR_CREDS_2
- 0x80000086
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: この値はサポートされていません。- SECPKG_ATTR_NEGOTIATION_PACKAGE
- 0x80000081
pBuffer パラメーターには、Microsoft Negotiate プロバイダーによってネゴシエートされる認証パッケージの名前を指定するSecPkgContext_PackageInfo構造体へのポインターが含まれています。 - SECPKG_ATTR_PACKAGE_INFO
- 10
pBuffer パラメーターには、SecPkgContext_PackageInfo構造体へのポインターが含まれています。
使用中の SSP に関する情報を返します。- SECPKG_ATTR_SERVER_AUTH_FLAGS
- 0x80000083
pBuffer パラメーターには、現在のセキュリティ コンテキストのフラグに関する情報を指定するSecPkgContext_Flags構造体へのポインターが含まれています。
この属性は、クライアントでのみサポートされます。- SECPKG_ATTR_SIZES
- 0x0
pBuffer パラメーターには、SecPkgContext_Sizes構造体へのポインターが含まれています。
メッセージごとの関数と認証交換で使用される構造体のサイズを照会します。- SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
- 124
pBuffer パラメーターには、SecPkgContext_SubjectAttributes構造体へのポインターが含まれています。
この値は、接続のセキュリティ属性に関する情報を返します。
この値は CredSSP サーバーでのみサポートされます。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値はサポートされていません。 -
pBuffer [out]
-
属性を受け取る構造体へのポインター。 構造体の型は 、ulAttribute パラメーターの値によって異なります。
戻り値
関数が成功すると、SEC_E_OKが返されます。
関数が失敗した場合は、次のエラー コードを返すことができます。
リターン コード/値 | 説明 |
---|---|
|
関数が失敗しました。
phContext パラメーターは、不完全なコンテキストへのハンドルを指定します。 |
|
関数が失敗しました。
ulAttribute パラメーターの値が無効です。 |
解説
pBuffer パラメーターによって指される構造体は、クエリ対象の属性によって異なります。
呼び出し元は pBuffer 構造体自体を割り当てる必要があります。一方、SSP は pBuffer 構造体の可変サイズのメンバーを保持するために必要なメモリを割り当てます。 SSP によって割り当てられたメモリは、 FreeContextBuffer 関数を呼び出して解放する必要があります。
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2008 [デスクトップ アプリのみ] |
ヘッダー |
|
ライブラリ |
|
[DLL] |
|
Unicode 名と ANSI 名 |
QueryContextAttributesW (Unicode) と QueryContextAttributesA (ANSI) |
関連項目