[英]Issues making a TLS 1.2 request with .NET Framework 4.7+
我們有一個在 Azure 雲應用服務上運行的 .NET 4.7+ 應用程序。 當我們嘗試使用 HttpWebRequest 調用最低 TLS 1.2 的 API 時,我們收到“請求中止:無法創建 SSL/TLS 安全通道”錯誤。 到目前為止我讀過的內容:
ServicePointManager.SecurityProtocol
進行硬編碼,因此除非絕對必要,否則我會盡量避免使用該解決方案。 微軟指南什么可能導致我的應用使用較低的 TLS 版本? 我已經搜索了代碼,但在任何地方都找不到手動 TLS 配置。 設置ServicePointManager.SecurityProtocol
真的是我唯一的解決方案嗎?
在你的代碼中添加這個:
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12
或者
如果您有可執行文件,只需更新關聯的配置文件,此文件始終命名為[可執行文件的名稱].exe.config。 如果沒有這樣的文件,請創建一個。
找到或創建后,更新其內容以啟用支持 TLS 1.2 所需的兼容性開關:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Net.DontEnableSystemDefaultTlsVersions=false"/>
</runtime>
</configuration>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.