Клиент WCF + Служба Windows + ISA = (407) Требуется проверка подлинности прокси - PullRequest
1 голос
/ 28 июня 2010

"Не снова", слышу, как ты говоришь. Да, знаю. Но этот отличается ... Я думаю.

Сценарий: У меня есть служба Windows (работает как SYSTEM), которая использует удаленную службу WCF. Машина находится за прокси-сервером ISA (без домена и без имени пользователя / pwd прокси-сервера), и я добавил прокси в свой app.config. Вот оно:

<system.net>
  <defaultProxy useDefaultCredentials="true">
    <proxy 
        bypassonlocal="False" 
        proxyaddress="http://myproxyserver:8080"
        usesystemdefault="False" />
  </defaultProxy>
</system.net>

Исключение:

System.Net.WebException: 
  The remote server returned an error: (407) Proxy Authentication Required.
  at System.Net.HttpWebRequest.GetResponse()
  at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel. ...
     HttpChannelRequest.WaitForReply(TimeSpan timeout)

Почему это отличается? Я изменил службу для работы в качестве администратора, и служба Windows смогла получить прекрасный доступ к службе WCF. К сожалению, мне нужно использовать учетную запись SYSTEM, поскольку служба запускает некоторые устаревшие компоненты COM +, для которых требуется установить параметр «Разрешить службе взаимодействовать с рабочим столом». (Эта опция доступна только для учетной записи SYSTEM)

Другая причина, по которой это странно, заключается в том, что SYSTEM должен быть всемогущим аккаунтом папы ( больше здесь )

Что я пробовал: Я пробовал это , это и это ... и затем некоторые .

Это немного загадка. Почему мой app.config будет работать для администратора, а не для SYSTEM?

Спасибо за помощь!

1 Ответ

0 голосов
/ 29 июня 2010

Нашел проблему. Оказывается, это не имеет ничего общего с учетной записью. Поскольку время ожидания было довольно продолжительным, я не всегда сразу видел это исключение, что привело меня к мысли, что оно как-то связано с используемой учетной записью.

Проблема заключалась в том, что useDefaultCredentials было установлено на false на производственной площадке. Сбой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...