共用方式為


QueryContextAttributesA 函式 (sspi.h)

QueryContextAttributes (CredSSP) 函式可讓傳輸應用程式查詢認證安全性支援提供者 (CredSSP) 安全性套件安全性內容的特定 屬性。

語法

SECURITY_STATUS SEC_ENTRY QueryContextAttributesA(
  [in]  PCtxtHandle   phContext,
  [in]  unsigned long ulAttribute,
  [out] void          *pBuffer
);

參數

[in] phContext

要查詢之安全性內容的句柄。

[in] ulAttribute

要傳回之內容的屬性。 此參數可以是下列其中一個值。 除非另有指定,否則屬性同時適用於客戶端和伺服器。

價值 意義
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 結構。

如果客戶端認證是在線身分識別認證,則緩衝區是封送處理 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 參數包含 SecPkgContext_PackageInfo“>SecPkgContext_PackageInfo 結構的指標,指定 交涉 Microsoft 提供者交涉的驗證套件名稱。
SECPKG_ATTR_PACKAGE_INFO
10
pBuffer 參數包含 SecPkgContext_PackageInfo“>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:不支援此值。

[out] pBuffer

接收屬性之結構的指標。 結構類型取決於 ulAttribute 參數的值。

傳回值

如果函式成功,則會傳回SEC_E_OK。

如果函式失敗,它可以傳回下列錯誤碼。

傳回碼/值 描述
SEC_E_INVALID_HANDLE
0x80100003
函式失敗。 phContext 參數會指定不完整內容的句柄。
SEC_E_UNSUPPORTED_FUNCTION
0x80090302
函式失敗。 ulAttribute 參數的值無效。

言論

pBuffer 參數所指向的結構會根據所查詢的屬性而有所不同。

雖然呼叫端必須配置 pBuffer 結構本身,但 SSP 會配置任何記憶體,以保存 pBuffer 結構的變數大小成員。 SSP 配置的記憶體必須藉由呼叫 FreeContextBuffer 函式來釋放。

注意

sspi.h 標頭會根據 UNICODE 預處理器常數的定義,將 QueryContextAttributes 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 sspi.h (include Security.h)
連結庫 Secur32.lib
DLL Secur32.dll

另請參閱

CERT_CONTEXT

FreeContextBuffer

SSPI 函式

SecPkgContext_ClientCreds

SecPkgContext_Sizes