Совершенно очевидно, что из вашего второго сообщения служба ожидает аутентификации вызывающей стороны. В зависимости от используемой привязки (протокола) это может быть один из нескольких методов:
Проверка подлинности Windows: по умолчанию включена для привязок wsHttp и netTcp - будет использоваться учетная запись Windows пользователя (для этого требуется, чтобы вызывающий пользователь и вызываемая служба находились в одном домене Windows или, по крайней мере, в доверенных доменах)
Аутентификация UserName / Password по членству в ASP.NET - обычно это требует некоторой настройки, поэтому я не думаю, что она будет включена по умолчанию
Сертификаты X.509 - опять же, требуется настройка
Я думаю, что ваш веб-сервер IIS как-то не правильно понимает / интерпретирует личность звонящего. Возможно, этот сервер IIS не является членом домена Active Directory? Или компьютер вызывающего абонента не является членом этого же домена? Я думаю, что-то в этой области.
Марк
PS:
Чтобы полностью отключить защиту ( НЕ РЕКОМЕНДУЕТСЯ! - по крайней мере, не для реальных производственных систем), вы можете сделать это:
<bindings>
<basicHttpBinding>
<binding name="NoSecurity">
<security mode="None" />
</binding>
</basicHttpBinding>
, а затем ссылаться на эту конфигурацию привязки в ваших конечных точках (как на стороне сервера, так и на стороне клиента):
<endpoint address="....."
binding="basicHttpBinding"
bindingConfiguration="NoSecurity"
contract="IMyService" />