Как получить объект System.Web.HttpWebRequest для использования SSL 2.0?

StackOverflow https://stackoverflow.com/questions/169222

  •  05-07-2019
  •  | 
  •  

Вопрос

Я не знаю, есть ли у меня вся информация, необходимая для правильного формулирования этого вопроса, так что терпите меня.

У меня есть локальная веб-страница (локальное значение 192.168. *), которая защищена самозаверяющим сертификатом SSL. Я пытаюсь получить доступ к этой странице с помощью объекта System.Net.HttpWebRequest, но столкнулся со странной проблемой.

Если эта страница открыта в Internet Explorer с помощью " Использовать SSL 2.0 " При отключенной опции браузер возвращает ошибку, как будто не может установить соединение. (Другими словами, ошибка подключения к браузеру, а не ошибка, отправленная сервером.) Если " Использовать SSL 2.0 " опция включена, страница работает нормально, и вы получаете стандартное предупреждение о том, что это самозаверяющий сертификат, хотите ли вы продолжить и т. д. (как ни странно, Firefox, который предположительно не имеет включенного SSL 2.0, работает просто хорошо.)

Теперь моя проблема в том, что я пытаюсь получить доступ к этой странице с помощью объекта HttpWebRequest, и ошибка, которую он возвращает обратно, заключается в том, что соединение было неожиданно закрыто, точно так же, как ошибка, которую IE выдает, когда " Использовать SSL 2.0 " выключен (У меня уже есть код, чтобы игнорировать тот факт, что это самозаверяющий сертификат, но он даже не зашел так далеко.)

Как получить System.Net.HttpWebRequest, чтобы, ну, " Использовать SSL 2.0 " когда он делает запрос?

Это было полезно?

Решение

Я сам столкнулся с этой проблемой при работе с Ssl3, хотя не уверен, что этот же совет подойдет для SSL2?

Чтобы обойти эту проблему, я установил флаг Ssl3 в протоколе безопасности следующим образом:

  

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

Проверьте эти ссылки для получения дополнительной информации:

system.net.servicepointmanager.securityprotocol на MSDN

перечисление протоколов безопасности в MSDN

Они могут указать вам правильное направление, если вам повезет:)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top