Как вызвать веб-службу с использованием схемы авторизации NTLM?

Я нуб для звонков WCF Web Services, поэтому надеюсь, что это легкий вопрос. При вызове веб-сервиса с помощью клиента Winform .Net 4, как мне изменить схему авторизации от Anonymous в NTLM?

прямо сейчас Я получаю исключение: Запрос HTTP неавторизован с помощью схемы аутентификации клиента Anonymous '. Заголовок аутентификации, полученный с сервера, был «NTLM» .

Моя цель - построить небольшой инструмент, чтобы помочь мне мониторировать хранилище данных TFS 2010 и Cube. TFS предоставляет веб-сервис WarshouseControlWebservice. Я могу назвать службу через тестовый режим в браузере при входе на сервер. Однако я пытаюсь вызвать ту же веб-сервис удаленно, с моего рабочего стола. Моя учетная запись пользователя находится в группе местных администраторов на сервере.

Я создал WinForm .NET 4 с канонической кнопкой1 и Textarea1. Затем я добавил ссылку на сервис на веб-сервис и творчески называется IT Servicereference1:

Add Service Reference...
http://tfssvr:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx

И вот мой код позади:

private void button1_Click(object sender, EventArgs e)
{
    // Creating a proxy takes about 3-4 seconds
    var dwSvc = new ServiceReference1.WarehouseControlWebServiceSoapClient();

    // Invoking the method throws an MessageSecurityException
    var dwStatus = dwSvc.GetProcessingStatus(null, null, null);
}

Я получаю System.ServiceModel.Security.messagesecurityException:

Запрос HTTP неавторизован с клиентом Схема аутентификации «Аноним». Заголовок аутентификации, полученный с сервера, был «NTLM» .

Я пытался пройти свои полномочия через:

dwSvc.ClientCredentials.Windows.ClientCredential =
    new System.Net.NetworkCredential("user", "pass", "domain");

, а также ...

dwSvc.ClientCredentials.Windows.ClientCredential =
    CredentialCache.DefaultNetworkCredentials;

Я пробуждаю через документацию WCF, но ... О, мальчик ... там много. Я надеюсь, что это что-то легко ??

заранее спасибо.

7
задан John Saunders 12 September 2011 в 01:50
поделиться