Служба WCF заблокирована брандмауэром Windows - PullRequest
11 голосов
/ 09 июня 2010

У меня есть служба WCF, использующая HttpBinding.Служба работает в процессе самостоятельного размещения (служба Windows), и этот процесс находится в списке исключений брандмауэра Windows.

Если брандмауэр активен, и я пытаюсь получить доступ к службе с помощью клиента C # илиInternet Explorer, сервис не отвечает.Но если брандмауэр отключен, соединение работает как чудо.

Есть ли у кого-нибудь опыт работы с WCF и брандмауэром Windows?Проблема возникла на Windows 7 64bit.Я еще не пробовал другую ОС.

Что я должен сделать, чтобы заставить это работать с активным брандмауэром?

С уважением, Майкл

РЕДАКТИРОВАТЬ: я нашел подсказку, что http.sys должен быть добавлен в список исключений брандмауэра, так как сам хостинг wcf использует http.sys.Любые советы, как решить эту проблему?

РЕДАКТИРОВАТЬ: я пытался открыть все порты прослушивания вручную, что тоже работает, но не вариант, потому что я не знаю их заранее.

Ответы [ 2 ]

5 голосов
/ 18 апреля 2011

Насколько я знаю, добавление собственного процесса службы WCF в брандмауэр не работает, потому что это не тот процесс, который принимает входящие вызовы, он работает, только если

  1. добавить сервисный порт к исключению глобального порта
  2. добавить процесс входящего демона WCF для обработки исключения, я не уверен насчет http, но для привязок net.tcp вам нужен $ FrameworkDir / SMSvcHost.exe вместо вашего процесса.
5 голосов
/ 30 ноября 2010

Попробуйте статью MSDN Настройка HTTP и HTTPS .

...