2015-06-16 80 views
8

有一個windows store應用程序8.1通過WCF連接到Web服務。最近在服務器上設置了TLS 1.2,導致應用程序停止工作。這裏是個例外,同時使HTTP請求 https://services.companyname.com這可能是由於 服務器證書是無法與 HTTP.SYS在HTTPS的情況下配置的事實發生如何讓Windows應用商店應用使用TLS 1.2?

錯誤。這也可能是由於客戶端和服務器之間的安全綁定不匹配導致的。

即使是一個簡單的Web請求

WebRequest request = WebRequest.Create(SERVER_URL_PROD); 
WebResponse response = await request.GetResponseAsync(); 

收益型 'System.Net.WebException' 下面

的異常出現在mscorlib.dll的 但在用戶沒有處理代碼

附加信息:底層連接已關閉:出現意外錯誤 發送時發生。

那麼如何使Windows應用商店應用程序使用TLS 1.2?

更新

上面的代碼工作中,如果

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 

ServicePointManager一個控制檯應用程序(.NET 4.5)是不能用於Windows Store應用程序

更新2

此外代碼在Windows中的工作原理Ph一個8.1其中ServicePointManager不是可用。

+0

好問題。我也想將tls 1.2添加到windows phone/tablet應用程序中。 – Watson

+0

您可以使用https://www.ssllabs.com/ssltest/analyze.html測試您的服務器,以驗證supportet CipherSuits是否可用。 –

回答

0

我已經處理了Web應用程序的TLS 1.2問題,並且隨着OP的提及,System.Net.ServicePointManager的簡單解決方案在Windows應用商店應用中無法使用。

解決方法是使用Windows.Web.Http而不是System.Net.Http,如在此MSDN forum中所述。