Кто-нибудь знает, как именно работает аутентификация NTLM в WCF / basicHttp? Интересно, передаются ли учетные данные пользователя для каждого отдельного вызова метода службы или используется какой-либо токен безопасности для последующих вызовов метода службы.
Точная конфигурация привязки, которую я использую:
<bindings>
<basicHttpBinding>
<binding name="winAuthBasicHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm" />
</security>
</binding>
</basicHttpBinding>
</bindings>
Я нашел этот тип конфигурации в справочнике MSDN. Но я не уверен, что это хорошая идея с точки зрения производительности. Альтернативой может быть предоставление настраиваемого метода GetAuthenticationToken () для предоставления токена безопасности для всех последующих запросов клиента. Это можно сделать через Enterprise Library - блок приложения безопасности.
Дополнительная информация: служба используется браузерами / клиентами Silverlight.