我有一个需要与之通信的非WCF服务。我有服务的WSDL,它使用带有UsernameToken策略的WS-Security 1.0。
标题示例:
<S11:Envelope xmlns:S11="..." xmlns:wsse="...">
<S11:Header>
...
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
...
</S11:Header>
...
</S11:Envelope>
与此服务进行通信的最佳方式是什么?
如果我使用WCF,那么使标题看起来像我需要的UsernameToken将是我所知道的问题,对吧?我怎么能这样做?
另一方面,我可以制作一个非WCF代理,即使它已经过时了。
最好的方法是什么?
答案 0 :(得分:1)
如果服务使用ssl,那么你可以使用这样的wcf配置:
<customBinding>
<binding name="NewBinding0">
<textMessageEncoding messageVersion="Soap11" />
<security authenticationMode="UserNameOverTransport">
<secureConversationBootstrap />
</security>
<httpTransport />
</binding>
</customBinding>
如果服务不使用ssl,那么您应该使用ClearUsernameBinding