У нас есть доступ к веб-сервису, который использует soap11 ... нет проблем, я просто установлю привязку как:
BasicHttpBinding wsBinding = new BasicHttpBinding(BasicHttpSecurityMode.TransportWithMessageCredential);
Нет. Нет кости. Поэтому я спросил у хозяина службы, почему у нас возникают проблемы с аутентификацией, и он сказал, что в нашей конфигурации должна быть эта пользовательская привязка:
<bindings>
<customBinding>
<binding name="lbinding">
<security authenticationMode="UserNameOverTransport"
messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11"
securityHeaderLayout="Strict"
includeTimestamp="false"
requireDerivedKeys="true"
keyEntropyMode="ServerEntropy">
</security>
<textMessageEncoding messageVersion="Soap11" />
<httpsTransport authenticationScheme ="Negotiate" requireClientCertificate ="false" realm =""/>
</binding>
</customBinding>
</bindings>
Единственная проблема в том, что мы создаем нашу привязку программно, а не через конфиг. Поэтому, если кто-то может указать мне правильное направление в отношении изменения моей BasicHttpBinding на пользовательскую привязку, которая соответствует значению .config, при условии, что я дам им большую блестящую золотую звезду на день.