Я создал службу WCF, которая использует wsHttpBinding, и клиент, который ее вызывает.
Но я все еще получаю следующее сообщение об ошибке:
An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail.
и внутреннее исключение:
An error occurred when processing the security tokens in the message.
вот файл конфигурации службы:
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="myWsBinding">
<security>
<message negotiateServiceCredential="false" algorithmSuite="Basic128"
establishSecurityContext="false" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service behaviorConfiguration="ServiceBehavior" name="HelloWorldService.HelloService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="myWsBinding"
contract="HelloWorldService.IHelloService">
<identity>
<servicePrincipalName value="host/MAGBAREYA"/>
</identity>
</endpoint>
<host>
<baseAddresses>
<add baseAddress="http://localhost:8999/myService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceMetadata httpGetEnabled="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
и вот файл конфигурации клиента:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_IHelloService">
<security mode="Message">
<message clientCredentialType="Windows" negotiateServiceCredential="false"
algorithmSuite="Basic128" establishSecurityContext="false" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:8999/myService" binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_IHelloService" contract="ServiceReference1.IHelloService"
name="WSHttpBinding_IHelloService">
<identity>
<servicePrincipalName value="host/MAGBAREYA"/>
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>
Проблемная конфигурация :gotiateServiceCredential = "false".
Если я установлю его в true как для службы, так и для клиента, клиент будет работать отлично (с указанными выше конфигурационными файлами, за исключением этого изменения)
Может кто-нибудь сказать, что мне здесь не хватает?
Заранее спасибо.