我試圖在VS 2010(WCF)中添加服務引用。 Web服務使用的WS-Policy,當我消費的服務我得到一些註釋代碼在我app.confing customBindings部分:我是否需要爲Visual Studio 2010安裝WSE 3
<!-- WsdlImporter encountered unrecognized policy assertions in ServiceDescription 'http://ws.TheirSite.com/WebServices/ResellerApiV1.wsdl': -->
<!-- <wsdl:binding name='ResellerApiBinding'> -->
<!-- <ns0:SupportingTokens xmlns:ns0="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702">..</ns0:SupportingTokens> -->
,我似乎無法創建具有的UserNameToken信息SOAP頭。
這些評論部分是因爲我需要安裝WSE 3.0還是包含在4.0 Framework中?
編輯:感謝您的意見。主機回來對我說,我需要添加此安全標籤來解決這個問題(*注意enableUnsecuredResponse只有4.0框架內提供):
<security authenticationMode="UserNameOverTransport" enableUnsecuredResponse="true" />
顯然在App.config註釋的XML是由無法處理SupportTokens策略的VisualStudio WsdlImporter工具(svcutil.exe?)導致,但添加上述指令會將WS-Security UsernameToken插入到SOAP標頭中。
WSE已經過時了。除非你沒有其他選擇,否則不要使用它。您的問題可能是由於WSE沒有實施最終的WS-Policy標準(這是一個臨時產品)。 – 2011-05-16 23:37:23
啊哈,謝謝。我沒有安裝它,當我添加服務引用時,我在app.config中獲得了該評論的代碼段。任何想法爲什麼?謝謝 – 2011-05-16 23:42:37
就像我說過的,我敢打賭那些過時的政策不符合標準。 – 2011-05-16 23:50:11