共用方式為


WsRequestSecurityToken 函式 (webservices.h)

從安全性權杖服務取得安全性權杖服務 (STS) ,以作為同盟案例中的權杖簽發者。 此函式會在用戶端上使用,並使用 STS 執行以 WS-Trust 為基礎的交涉步驟,直到取得安全性權杖或交涉程式失敗為止。

語法

HRESULT WsRequestSecurityToken(
  [in]           WS_CHANNEL                               *channel,
                 const WS_REQUEST_SECURITY_TOKEN_PROPERTY *properties,
  [in]           ULONG                                    propertyCount,
                 WS_SECURITY_TOKEN                        **token,
  [in, optional] const WS_ASYNC_CONTEXT                   *asyncContext,
  [in, optional] WS_ERROR                                 *error
);

參數

[in] channel

應該執行交涉以取得安全性權杖的通道。

提供的通道 應該已使用 適當的 WS_SECURITY_DESCRIPTION 建立,以符合簽發者的安全性需求,然後 開啟 給簽發者的 WS_ENDPOINT_ADDRESS 。 呼叫端也負責在完成此函式之後 關閉釋放 通道。

因此,呼叫此函式時,通道必須處於狀態 WS_CHANNEL_STATE_OPEN 。 成功完成此函式之後,通道會處於狀態 WS_CHANNEL_STATE_OPEN。 完成失敗之後,它會處於狀態 WS_CHANNEL_STATE_OPEN 或狀態 WS_CHANNEL_STATE_FAULTED

properties

要在與簽發者交涉程式中使用的選擇性設定群組。

[in] propertyCount

屬性陣列中的專案數。

token

取得的 XML 安全性權杖。 這是在函式呼叫成功完成時設定的,如果在函式執行期間發生任何失敗,則為未修改。

如果傳回的安全性權杖要向服務呈現,則傳回的安全性權杖可以與 WS_XML_TOKEN_MESSAGE_SECURITY_BINDING 搭配使用。 不再需要權杖時,必須使用 WsFreeSecurityToken 釋放權杖。

[in, optional] asyncContext

如何以非同步方式叫用函式的資訊,如果以同步方式叫用,則為 Null

[in, optional] error

指定函式失敗時應儲存其他錯誤資訊的位置。

傳回值

此函式可以傳回下列其中一個值。

傳回碼 描述
WS_S_ASYNC
非同步作業仍在擱置中。

備註

Windows 7 和 Windows Server 2008 R2:WWSAPI 僅支援由輕量型 Web 服務安全性設定檔所定義的Ws-TrustWs-SecureConversation (LWSSP) 。 如需 Microsoft 實作的詳細資訊,請參閱 LWSSP 的 MESSAGE 語法 一節。

規格需求

   
最低支援的用戶端 Windows 7 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 webservices.h
程式庫 WebServices.lib
Dll WebServices.dll