次の方法で共有


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 では、Lightweight Web Services Security Profile (LWSSP) で定義されている Ws-TrustWs-SecureConversation のみがサポートされます。 Microsoft の実装の詳細については、LWSSP の MESSAGE 構文 に関するセクションを参照してください。

要件

   
サポートされている最小のクライアント Windows 7 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー webservices.h
Library WebServices.lib
[DLL] WebServices.dll