В моем приложении (.net 3.5 sp1) используется HttpWebRequest для связи с разными конечными точками, иногда с его HTTPS, где каждый сервер хостинга может иметь другое требование к протоколу безопасности, например, TLS или SSL3 или либо.
Как правило, серверы играют хорошо и с радостью обсуждают/откатываются о том, что SecurityProtocol использует TLS или SSL3, но некоторые не делают этого и когда .net настроен как TLS или SSL3 (по умолчанию я думаю) те серверы, которые поддерживают SSL3 вызвать .net, чтобы выбросить ошибку отправки.
Из того, что я могу сказать .net предоставляет объекту ServicePointManager свойство SecurityProtocol, которое может быть установлено в TLS, SSL3 или и то, и другое. Следовательно, в идеале, когда устанавливаются обе идеи, клиент и сервер должны обсуждать, что использовать, но, как было сказано ранее, не работают.
Предположительно вы можете установить ServicePointManager.SecurityProtocol = Ssl3, но как насчет конечных точек, которые хотят использовать TLS?
Проблема, которую я вижу с ServicePointManager и SecurityProtocol, заключается в том, что ее статический и, следовательно, домен приложения широко.
Итак, на вопрос..
как я могу использовать HttpWebRequest с другим SecurityProtocol, например.
1) url 1 установлен для использования TLS | Ssl3 (переговоры)
2) url 2 установлен в Ssl3 (только Ssl3)