Какую версию 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 (этот вопрос для тех)


person JK.    schedule 17.10.2014    source источник
comment
Хотя этот вопрос не является дубликатом другого упомянутого вопроса, применим тот же ответ.   -  person Gareth Williams    schedule 17.10.2014
comment
Не обязательно. Тот же ответ будет применяться, если SOAP использует WebRequest под капотом. Если нет, то легко мог быть другой ответ.   -  person JK.    schedule 18.10.2014


Ответы (2)


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

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

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

person Paul Melliere    schedule 30.01.2015

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

person xav    schedule 22.10.2014