Я, должно быть, упускаю что-то очень простое. Вот сценарий
У нас есть веб-сервис ASP.NET 2.0 (Server 2003) со следующими настройками:
- SSL
- Интегрированная безопасность
- Anom. Доступ отключен
- Работает в режиме NETWORK SERVICE
- Выставлено (то есть может получить доступ от общественности
интернет)
- Сервис возвращает данные из базы данных
используя имя пользователя / пароль приложения,
НЕ вызывает другой веб-сервис
- Никакая имитация не установлена на
обслуживание, хотя я пытался
переключи это тоже.
У нас есть клиентский компьютер (тот же домен), который отключен от локальной сети, но использует воздушную карту. Пользователь вошел в ноутбук, используя свое имя пользователя AD / пароль / домен.
В коде на уровне прокси мы имеем service.PreAuthenticate
= true
Мы также использовали три DefaultCredentials
и DefaultNetworkCredentials
с одинаковым результатом.
- .NET клиент Windows работает с VPN
- .NET-клиент Windows получает 401:
Несанкционированный БЕЗ VPN (Примечание: нет
внутреннее исключение возвращается)
- IE работает с или без VPN.
Мое предположение (возможно, неверное) заключалось в том, что если я передам DefaultNetworkCredentials классу прокси, он передаст учетные данные домена для аутентификации. IE, очевидно, творит чудеса, чтобы заставить это работать.
Что мне не хватает?