Я нуб для звонков 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, но ... О, мальчик ... там много. Я надеюсь, что это что-то легко ??
заранее спасибо.