Какую версию SSL/TLS использует System.Web.Services.Protocols.SoapHttpClientProtocol?

Теперь, когда установлено, что SSL 3 уязвим для атаки POODLE:

Какую версию SSL/TLS использует System.Web.Services.Protocols.SoapHttpClientProtocol при подключении к любому https Uri?

Я использую SoapHttpClientProtocol для подключения к нескольким сторонним SOAP API. Один из них сказал, что будет блокировать любой запрос, использующий SSL 3. Но SoapHttpClientProtocol является частью базовой платформы.Net (использует 4.5), поэтому неясно, какую версию SSL он использует, или как переопределить версию.

Обратите внимание, что этот вопрос не является дубликатом. Какие версии SSL/TLS поддерживает System.Net.WebRequest?, Я использую несколько API, некоторые из них REST (другой вопрос для тех), а некоторые SOAP (этот вопрос для тех)

2 ответа

Декомпиляция класса SoapHttpClientProtocol показывает, что он действительно использует System.Web.WebRequest под капотом.

Различные методы для вызова запросов (Invoke, InvokeAsync, BeginInvoke) все в конечном итоге вызывают GetWebRequest, который вызывает базовый класс WebClientProtocol.GetWebRequest, в котором создается WebRequest.

Из этого ответа следует, какой версией SSL/TLS пользуется System.Net.WebRequest? также применимо здесь.

Версия SSL должна управляться статическим свойством System.Net.ServicePointManager.SecurityProtocol. В моем ящике установлено "SSLV3 | TLS". Вы можете установить на TLS12.

Другие вопросы по тегам