Код в nUnit работает нормально, но в Windows Service получает статус HTTP 403. Запрещено при вызове удаленной веб-службы - PullRequest
0 голосов
/ 28 октября 2010

Context
Я работаю с модулем c #, который отвечает за интеграцию нашего бизнеса с внешним объектом в рамках нашей системы SOA. Внешний объект предоставляет веб-сервисы. Они прошли тщательную проверку, так как это продукт федерального правительства.
Модуль разработан с использованием подхода, основанного на тестировании, мы используем nUnit, и все было хорошо во время тестирования.

Безопасность
Публичные сертификаты - это основное требование для подключения к веб-сервисам. Используется следующая строка: X509Certificate.CreateFromCertFile ("Application.cer");

Задача
Во время тестирования удаленный веб-сервис был успешно подключен, и бизнес-правила были тщательно протестированы. Требования требовали, чтобы этот модуль использовался в качестве приложения-службы Windows. После развертывания вызовы удаленной веб-службы приводят к сообщению «HTTP-статус 403: запрещено». Кажется, что кодирование не является проблемой, поскольку тот же модуль прекрасно работает в среде nUnit и не работает только в Windows Service.

Среда разработки
- Windows XP - Vistual Studio 2008 - Нунит - C #

Уже судили
1. Запуск службы Windows от имени локальной учетной записи администратора.
2. Добавьте программу в список исключений на брандмауэре Windows.

Спасибо

1 Ответ

1 голос
/ 15 января 2014

Вам необходимо запустить службу из другой учетной записи, которая имеет права администратора. Он выдаст ошибку при запуске под учетной записью LocalSystem.

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