如需搭配特定 安全性支援提供者 使用此函式的相關信息,請參閱下列主題。
| 主題 | 說明 |
|---|---|
| QueryContextAttributes (CredSSP) | 可讓傳輸應用程式查詢認證安全性支援提供者 (CredSSP) 以取得 安全性內容的特定屬性。 |
| QueryContextAttributes (摘要) | 可讓傳輸應用程式查詢摘要式安全性套件,以取得 安全性內容的特定屬性。 |
| QueryContextAttributes (Kerberos) | 可讓傳輸應用程式查詢 Kerberos 安全性套件是否有 安全性內容的特定屬性。 |
| QueryContextAttributes (Negotiate) | 可讓傳輸應用程式查詢交涉安全性套件是否有 安全性內容的特定屬性。 |
| QueryContextAttributes (NTLM) | 可讓傳輸應用程式查詢NTLM安全性套件是否有 安全性內容的特定屬性。 |
| QueryContextAttributes (Schannel) | 可讓傳輸應用程式查詢安全內容特定屬性的安全通道安全性套件。 |
語法
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_APP_DATA
- 0x5e
pBuffer 參數包含SecPkgContext_SessionAppData結構的指標。
會傳回或指定工作階段的應用程式資料。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_AUTHORITY
- 6
pBuffer 參數包含SecPkgContext_Authority結構的指標。
查詢驗證授權單位的名稱。- SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
- 二十七
pBuffer 參數包含SecPkgContext_ClientSpecifiedTarget結構的指標,代表用戶端提供之初始目標的服務主體名稱 (SPN)。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。- SECPKG_ATTR_CONNECTION_INFO
- 0x5a
pBuffer 參數包含SecPkgContext_ConnectionInfo結構的指標。
傳回已建立連接的詳細資訊。
只有安全通道 安全性套件才支援這個屬性。- 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_DCE_INFO
- 3
pBuffer 參數包含SecPkgContext_DceInfo結構的指標。
查詢 DCE 服務所使用的授權數據。- SECPKG_ATTR_ENDPOINT_BINDINGS
- 26
pBuffer 參數包含指定通道系結資訊之SecPkgContext_Bindings結構的指標。
只有安全通道 安全性套件才支援這個屬性。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。- SECPKG_ATTR_EAP_KEY_BLOCK
- 0x5b
pBuffer 參數包含SecPkgContext_EapKeyBlock結構的指標。
查詢EAP TLS 通訊協定所使用的金鑰數據。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_FLAGS
- 14
pBuffer 參數包含SecPkgContext_Flags結構的指標。
傳回交涉內容旗標的相關信息。- SECPKG_ATTR_ISSUER_LIST_EX
- 0x59
pBuffer 參數包含SecPkgContext_IssuerListInfoEx結構的指標。
傳回伺服器接受的憑證簽發者清單。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_KEY_INFO
- 5
pBuffer 參數包含SecPkgContext_KeyInfo結構的指標。
查詢 安全性內容中使用的金鑰相關信息。- SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
- 30
pBuffer 參數包含SecPkgContext_LastClientTokenStatus結構的指標,指定來自最近呼叫 InitializeSecurityContext 函式的令牌是否為客戶端的最後一個令牌。
此值僅受 Negotiate、Kerberos 和 NTLM 安全性套件支援。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。- SECPKG_ATTR_LIFESPAN
- 2
pBuffer 參數包含SecPkgContext_Lifespan結構的指標。
查詢內容生命週期。- SECPKG_ATTR_LOCAL_CERT_CONTEXT
- 0x54
pBuffer 參數包含PCCERT_CONTEXT結構的指標。
尋找包含本機結束憑證的憑證內容。
只有安全通道 安全性套件才支援這個屬性。- 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_REMOTE_CERT_CONTEXT
- 0x53
pBuffer 參數包含PCCERT_CONTEXT結構的指標。
尋找包含伺服器提供之結束憑證的憑證內容。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_ROOT_STORE
- 0x55
pBuffer 參數包含 HCERTCONTEXT 的指標。 尋找包含根存放區所提供之憑證的憑證內容。 - SECPKG_ATTR_SESSION_KEY
- 9
pBuffer 參數包含SecPkgContext_SessionKey結構的指標。
傳回 會話金鑰的相關信息。- SECPKG_ATTR_SESSION_INFO
- 0x5d
pBuffer 參數包含SecPkgContext_SessionInfo結構的指標。
傳回會話的相關信息。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_SIZES
- 0
pBuffer 參數包含SecPkgContext_Sizes結構的指標。
查詢每個訊息函式中使用的結構大小。- SECPKG_ATTR_STREAM_SIZES
- 4
pBuffer 參數包含SecPkgContext_StreamSizes結構的指標。
查詢每個訊息函式中所使用之數據流的各個部分大小。
只有安全通道 安全性套件才支援這個屬性。- SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
- 124
pBuffer 參數包含SecPkgContext_SubjectAttributes結構的指標。
這個值會傳回連線之安全性屬性的相關信息。
只有在 CredSSP 伺服器上才支援此值。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。- SECPKG_ATTR_SUPPORTED_SIGNATURES
- 0x66
pBuffer 參數包含SecPkgContext_SupportedSignatures結構的指標。
這個值會傳回連線所支援之簽章類型的相關信息。
只有安全通道 限制委派才支援此值。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。- SECPKG_ATTR_TARGET_INFORMATION
- 17
pBuffer 參數包含SecPkgContext_TargetInformation結構的指標。
傳回遠端伺服器名稱的相關信息。- SECPKG_ATTR_UNIQUE_BINDINGS
- 25
pBuffer 參數包含指定通道系結資訊之SecPkgContext_Bindings結構的指標。
只有安全通道 限制委派才支援此值。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP: 不支援此值。 -
pBuffer [out]
-
接收屬性之結構的指標。 指向的結構類型取決於 ulAttribute 參數中指定的值。
返回值
如果函式成功,則傳回值會SEC_E_OK。
如果函式失敗,傳回值是非零的錯誤碼。
備註
pBuffer 參數所指向的結構會根據所查詢的屬性而有所不同。 呼叫端必須配置 pBuffer 結構本身,但 SSP 會配置任何保留 pBuffer 結構變數大小成員所需的記憶體。 透過呼叫 FreeContextBuffer 函式,即可釋放SSP配置的記憶體。
讀取SECPKG_ATTR_REMOTE_CERT_CONTEXT或SECPKG_ATTR_LOCAL_CERT_CONTEXT值之後, hCertStore 成員將會設定為包含中繼憑證的證書存儲句柄,如果有的話。 此外,應用程式會負責呼叫 CertFreeCertificateContext 來釋放憑證內容所使用的記憶體。
需求
| 要求 | 價值 |
|---|---|
| 最低支援的用戶端 |
Windows XP [僅限傳統型應用程式] |
| 最低支援的伺服器 |
Windows Server 2003 [僅限傳統型應用程式] |
| 頁首 |
|
| 圖書館 |
|
| DLL |
|
| Unicode 和 ANSI 名稱 |
QueryContextAttributesW (Unicode) 和 QueryContextAttributesA (ANSI) |