Моя служба WCF использует wsHttpBinding и отлично работает на клиенте, когда служба формируется клиентом с использованием следующих параметров по умолчанию:
RServiceClient R = new RServiceClient();
Однако в какой-то момент мне понадобится указать местоположение службы, предположительно, путем изменения адреса конечной точки следующим образом:
RServiceClient R = new RServiceClient();
R.Endpoint.Address = new EndpointAddress(new Uri "http://xxx.xxxx.xxx:80/RServer/RService.svc"));
Однако, когда я указываю точную конечную точку, я получаю исключение SecurityNegotiationException:
System.ServiceModel.Security.SecurityNegotiationException не было обработано
Сообщение = "Звонящий не был аутентифицирован службой."
Источник = "mscorlib" ....
Служба WCF работает на IIS и имеет анонимный доступ, включенный под администратором IIS. Кроме того, эта ошибка возникает, когда клиент запускается с той же машины, что и служба под учетной записью администратора - я еще не дошел до страшной части запуска его по сети!
Есть идеи?