Что означает на высоком уровне указание удостоверения DNS при использовании проверки подлинности Windows для службы WCF?Например:
<configuration>
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_ICalculator_Windows">
<security>
<message clientCredentialType="Windows"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:8003/servicemodelsamples/service/dnsidentity"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_ICalculator_Windows"
contract="ICalculator"
name="WSHttpBinding_ICalculator">
<identity>
<dns value="contoso.com" />
</identity>
</endpoint>
</client>
</system.serviceModel>
</configuration>
Эта страница говорит:
В этом случае, когда клиент получает учетные данные Windows (Kerberos) для службы, оножидает, что значение будет contoso.com.
Я действительно не понимаю этого.Как значение учетных данных для службы может быть contoso.com?Что это означает под учетными данными?
Проверяет ли он также, что действительное DNS-имя службы действительно contoso.com?В противном случае, что помешает кому-то написать мошенническую службу WCF, которая сообщает, что ее личность - contoso.com?