У меня один сервер (Windows 2003 / IIS 6). Этот сервер имеет несколько разных настроек «Веб-сайтов» в IIS. Каждый сайт настроен в IIS с отдельным заголовком узла (порт 80). Кроме того, каждый сайт также доступен через указанный номер порта (без заголовка узла).
Например:
moj-sait1:
http://apps.mysite1.com
или же
http://myserver:xxxx
MySite2:
http://something.mysite2.com
или же
http://myserver:yyyy
Я отредактировал свой файл hosts (это машина для разработки), чтобы перенаправить заголовок узла каждого сайта на локальную машину (127.0.0.1).
У меня есть веб-сайт ASP.NET 2.0 на одном сайте IIS (mysite1) и веб-служба ASP.NET 2.0 на другом сайте IIS (mysite2). Веб-сайт взаимодействует с веб-сервисом, используя код, подобный следующему:
MyWebService svc = new MyWebService();
//also have tried "http://myserver:yyyy/MyWebService.asmx" below
svc.Url = "http://something.mysite2.com/MyWebService.asmx";
svc.Credentials = System.Net.CredentialCache.DefaultCredentials;
svc.MyMethod();
Все сайты настроены для встроенной безопасности Windows, а ASP.NET настроен для проверки подлинности Windows с помощью . Модель безопасности диктует, что пользователь, вошедший в веб-приложение, должен проходить аутентификацию на всем пути к веб-службе (и впоследствии к базовой (ым) базе (ам), но это не обязательно здесь).
У меня это нормально работало, однако я перестроил свою веб-службу (новый метод), и теперь все не работает с результатом любого вызова веб-службы, заканчивающегося 401 несанкционированным сообщением.
Звучит как проблема двойного прыжка. Я полагаю, что это как-то связано с тем, что веб-сервис не принимает передаваемые учетные данные и требует новых. Просто не уверен, как это подтвердить. Не уверен, почему это может вызвать проблемы - я вошел в систему как администратор компьютера / домена, и IE настроен для передачи учетных данных в Свойства обозревателя> вкладка Безопасность> Пользовательский уровень> Автоматический вход в зону интрасети. Да, соответствующие сайты добавляются в мою "зону интранета".
Как лучше всего это устранить? Любые идеи о том, что может быть причиной этого сейчас?
ТИА!