QueryContextAttributes (Digest) 関数

QueryContextAttributes (Digest) 関数を使用すると、トランスポート アプリケーションはダイジェスト セキュリティ パッケージに対して、セキュリティ コンテキストの特定の属性に対してクエリを実行できます。

構文

SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
  _In_  PCtxtHandle phContext,
  _In_  ULONG       ulAttribute,
  _Out_ PVOID       pBuffer
);

パラメーター

phContext [in]

クエリを実行する セキュリティ コンテキスト へのハンドル。

ulAttribute [in]

返されるコンテキストの属性を指定します。 このパラメーターには、次の値のいずれかを指定できます。

説明
SECPKG_ATTR_ACCESS_TOKEN
18
pBuffer パラメーターには、SecPkgContext_AccessToken構造体へのポインターが含まれています。
アクセス トークンへのハンドルを返します。
SECPKG_ATTR_AUTHORITY
6
pBuffer パラメーターには、SecPkgContext_Authority構造体へのポインターが含まれています。
認証機関の名前を照会します。
SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
27
pBuffer パラメーターには、クライアントによって提供される初期ターゲットのサービス プリンシパル名 (SPN) を表すSecPkgContext_ClientSpecifiedTarget構造体へのポインターが含まれています。
この値は、チャネル バインドを使用する場合にのみサポートされます。
Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP: この値はサポートされていません。
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_DCE_INFO
3
pBuffer パラメーターには、SecPkgContext_DceInfo構造体へのポインターが含まれています。
DCE サービスで使用される承認データのクエリ。
SECPKG_ATTR_FLAGS
14
pBuffer パラメーターには、SecPkgContext_Flags構造体へのポインターが含まれています。
ネゴシエートされたコンテキスト フラグに関する情報を返します。
SECPKG_ATTR_KEY_INFO
5
pBuffer パラメーターには、SecPkgContext_KeyInfo構造体へのポインターが含まれています。
セキュリティ コンテキストで使用されるキーに関する情報を 照会します
SECPKG_ATTR_LIFESPAN
2
pBuffer パラメーターには、SecPkgContext_Lifespan構造体へのポインターが含まれています。
コンテキストの有効期間を照会します。
SECPKG_ATTR_LOCAL_CRED
pBuffer パラメーターには、SecPkgContext_LocalCredentialInfo構造体へのポインターが含まれています。 (互換性のために残されています)
SECPKG_ATTR_LOCAL_CERT_CONTEXTに置き換えられます。
SECPKG_ATTR_NAMES
1
pBuffer パラメーターには、SecPkgContext_Names構造体へのポインターが含まれています。
コンテキストに関連付けられている名前を照会します。
SECPKG_ATTR_NATIVE_NAMES
13
pBuffer パラメーターには、SecPkgContext_NativeNames構造体へのポインターが含まれています。
送信チケットからプリンシパル名 (CNAME) を返します。
SECPKG_ATTR_NEGOTIATION_INFO
12
pBuffer パラメーターには、SecPkgContext_NegotiationInfo構造体へのポインターが含まれています。
ネゴシエーション プロセスで使用される セキュリティ パッケージ に関する情報と、そのパッケージを使用するためのネゴシエーションの現在の状態を返します。
SECPKG_ATTR_PACKAGE_INFO
10
pBuffer パラメーターには、SecPkgContext_PackageInfo構造体へのポインターが含まれています。
使用中の SSP に関する情報を返します。
SECPKG_ATTR_PASSWORD_EXPIRY
8
pBuffer パラメーターには、SecPkgContext_PasswordExpiry構造体へのポインターが含まれています。
パスワードの有効期限情報を返します。
SECPKG_ATTR_ROOT_STORE
0x55
pBuffer パラメーターには、HCERTCONTEXT へのポインターが含まれています。 ルート ストアによって提供される証明書を含む証明書コンテキストを検索します。
SECPKG_ATTR_SESSION_KEY
9
pBuffer パラメーターには、SecPkgContext_SessionKey構造体へのポインターが含まれています。
セッション キーに関する情報を返します。
SECPKG_ATTR_SIZES
0
pBuffer パラメーターには、SecPkgContext_Sizes構造体へのポインターが含まれています。
メッセージごとの関数で使用される構造体のサイズを照会します。
SECPKG_ATTR_STREAM_SIZES
4
pBuffer パラメーターには、SecPkgContext_StreamSizes構造体へのポインターが含まれています。
メッセージごとの関数で使用されるストリームのさまざまな部分のサイズを照会します。
SECPKG_ATTR_TARGET_INFORMATION
17
pBuffer パラメーターには、SecPkgContext_TargetInformation構造体へのポインターが含まれています。
リモート サーバーの名前に関する情報を返します。

 

pBuffer [out]

属性を受け取る構造体へのポインター。 指し示される構造体の型は、 ulAttribute パラメーターで指定された値によって異なります。

戻り値

関数が成功した場合、戻り値はSEC_E_OK。

関数が失敗した場合、戻り値は 0 以外のエラー コードになります。

解説

pBuffer パラメーターによって指される構造体は、クエリ対象の属性によって異なります。 呼び出し元は pBuffer 構造体自体を割り当てる必要がありますが、SSP は pBuffer 構造体の可変サイズのメンバーを保持するために必要なメモリを割り当てます。 SSP によって割り当てられたメモリは、 FreeContextBuffer 関数を呼び出すことによって解放できます。

SECPKG_ATTR_REMOTE_CERT_CONTEXT値またはSECPKG_ATTR_LOCAL_CERT_CONTEXT値が読み取られた後、 hCertStore メンバーは中間証明書を含む証明書ストアへのハンドル (存在する場合) に設定されます。 また、アプリケーションは CertFreeCertificateContext を呼び出して、証明書コンテキストで使用されるメモリを解放します。

要件

要件
サポートされている最小のクライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Sspi.h (Security.h を含む)
ライブラリ
Secur32.lib
[DLL]
Secur32.dll
Unicode 名と ANSI 名
QueryContextAttributesW (Unicode) と QueryContextAttributesA (ANSI)

関連項目

SSPI 関数

CERT_CONTEXT

FreeContextBuffer

SecPkgContext_Authority

SecPkgContext_ConnectionInfo

SecPkgContext_DceInfo

SecPkgContext_IssuerListInfoEx

SecPkgContext_KeyInfo

SecPkgContext_Lifespan

SecPkgContext_Names

SecPkgContext_Sizes

SecPkgContext_StreamSizes