Главное меню> Инструменты> Параметры
Текстовый редактор (дерево)> C #> Показать группу (флажок Номера строк)
, что было просто:)
Я видел похожую проблему, когда интегрированная / NTLM безопасность будет работать, только если вы обращаетесь к хосту по имени машины или localhost. На самом деле, это [плохо] документированная функция в Windows, которая предназначена для защиты от "атак отражения".
По сути, вам нужно создать ключ реестра на машине, которая пытается получить доступ к серверу, и внести в белый список домен, к которому вы пытаетесь получить доступ. Каждое имя хоста / FQDN должно быть в отдельной строке - нет подстановочных знаков, и имя должно точно совпадать. Из статьи KB:
Попробуйте войти в параметры IE и явно добавить сайт в зону интрасети. Затем перезапустите программу. Также не следует запускать программу под логином администратора. Это может вызвать конфигурацию усиленной безопасности для Internet Explorer .
Это может объяснить, почему вы можете попасть на сайт с помощью Firefox и Opera, но не с помощью IE или WebClient.
Вы пробовали ...
new NetworkCredential( "peter", "password", "boxname" );
Вы также можете попробуйте ...
var credCache = new CredentialCache();
credCache.Add( new Uri ("http://localhost/upload.aspx"),
"Negotiate",
new NetworkCredential("peter", "password", "boxname"));
wc.Credentials = credCache;
Кроме того, согласно this , возможно, IIS настроен неправильно. Попробуйте заменить "переговоры" на "базовый" в приведенном выше примере и проверьте свою конфигурацию IIS для веб-сайта. Также существует множество возможных причин здесь .
Не зная вашего развертывания IIS и предполагая, что у вас есть правильные правила авторизации для набора для загрузки в IIS (например, правильные разрешения * ACL в нужных каталогах, в которые вы пытаетесь загружать контент, и т. д.), первое, что я бы попробовал, - это установить UseDefaultCredentials на true вместо явной установки учетных данных. (Возможно, вы думаете, что получаете доступ к серверу с учетными данными, которые вы устанавливаете, но это не так? Это было бы возможно, если это сработает.)
Это очень распространенный сценарий, поэтому я бы сосредоточился на правилах авторизации IIS для каталог, в который вы пытаетесь загрузить файл, фактические ACL в этом каталоге. Например, ваш сайт выдает себя за другое лицо или нет? если это так, тогда у вас должны быть фактические ACL в этом каталоге, в противном случае любой пул приложений учетной записи работает.