HOW TO:在 WSFederationHttpBinding 上停用安全工作階段
某些服務可能會要求聯合認證,但卻不支援安全工作階段。在此情況下,您必須停用安全工作階段功能。與 WsHttpBinding 不同的是,WSFederationHttpBinding 類別不會在您與服務進行通訊時,提供停用安全工作階段的方法。反之,您必須建立自訂繫結,以便使用啟動安裝程式繫結來取代安全工作階段。
此主題將示範如何修改 WSFederationHttpBinding 內所包含的繫結項目來建立自訂繫結。除了不使用安全工作階段之外,其餘結果會與 WSFederationHttpBinding 相同。
若要建立一個不包含安全工作階段的自訂聯合繫結
在程式碼中以命令方式建立 WSFederationHttpBinding 類別的執行個體,或是從組態檔中載入一個執行個體。
將 WSFederationHttpBinding 複製到 CustomBinding。
在 CustomBinding 中尋找 SecurityBindingElement。
在 SecurityBindingElement 中尋找 SecureConversationSecurityTokenParameters。
將原始的 SecurityBindingElement 取代為來自 SecureConversationSecurityTokenParameters 的啟動安裝安全性繫結項目。
範例
下列範例會建立了一個不包含安全工作階段的自訂聯合繫結。
編譯程式碼
- 若要編譯此程式碼範例,請建立一個可參考 System.ServiceModel.dll 組件的專案。