2014-10-17 92 views
5

現在,SSL 3已經被認爲是容易受到攻擊POODLESystem.Web.Services.Protocols.SoapHttpClientProtocol使用什麼版本的SSL/TLS?

不System.Web.Services.Protocols.SoapHttpClientProtocol連接到任何HTTPS烏里時使用何種版本的SSL/TLS的?

我使用SoapHttpClientProtocol連接到多個第三方SOAP API。其中之一已經表示,他們將阻止任何使用SSL 3的請求。但SoapHttpClientProtocol是.Net核心框架(使用4.5)的一部分,所以它不知道它使用的是什麼版本的SSL,或者如何覆蓋版本。

請注意此問題不是Which versions of SSL/TLS does System.Net.WebRequest support?的重複。我使用幾個API,其中一些是REST(另一個問題是針對那些),另一些是SOAP(這個問題是針對這些的)

+1

雖然這個問題不是提到的另一個問題的重複,但同樣的答案也適用。 – 2014-10-17 19:48:56

+1

不一定。如果SOAP在底層使用WebRequest,則同樣的答案將適用。如果沒有,那麼可能會有不同的答案。 – 2014-10-18 00:17:50

回答

1

SSL版本應該由靜態屬性System.Net.ServicePointManager.SecurityProtocol驅動。在我的箱子中它被設置爲「SSLV3 | TLS」。您可以設置爲TLS12。

3

反編譯SoapHttpClientProtocol類表明它確實使用了System.Web.WebRequest。

調用請求(Invoke,InvokeAsync,BeginInvoke)的各種方法都最終調用GetWebRequest,該方法調用基類WebClientProtocol.GetWebRequest,這是構建WebRequest的地方。

因此,那麼對What version of SSL/TLS does System.Net.WebRequest use?的回答也適用於此處。