Dmy*_*tro 5 c# httpclient azure-maps
下午好!我通过 HttpClient 使用 Azure Maps API。如何启用对 TLS 1.2 的支持?正如我在 Framework 4.6+ 中所知道的那样,它是受支持的。我不应该为此做任何事情吗?
小智 9
一般来说,您不需要在应用程序中指定任何配置即可采用最新的 TLS 协议。
learn.microsoft.com上概述了.Net 4.7 之前版本的最佳实践和方案。
在较高级别上,您应该进行审核以确保您的应用程序不会对较低 TLS 版本产生任何硬依赖。但除此之外,不需要做任何工作。
我们建议您:
- 您的应用程序以 .NET Framework 4.7 或更高版本为目标。WCF 应用程序上的目标为 .NET Framework 4.7.1 或更高版本。
- 不要指定 TLS 版本。配置您的代码,让操作系统决定 TLS 版本。
- 执行彻底的代码审核以验证您没有指定 TLS 或 SSL 版本。
当您的应用程序让操作系统选择 TLS 版本时:
- 它会自动利用未来添加的新协议,例如 TLS 1.3。
- 操作系统会阻止发现不安全的协议。
使用ServicePointManager设置安全协议。
获取或设置由 ServicePointManager 对象管理的 ServicePoint 对象使用的安全协议。
HttpClient httpClient = new HttpClient();
//specify to use TLS 1.2 as default connection
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
Run Code Online (Sandbox Code Playgroud)
此属性选择用于新连接的安全套接字层 (SSL) 或传输层安全 (TLS) 协议的版本;现有连接不会改变。
从 .NET Framework 4.7 开始,此属性的默认值为 SecurityProtocolType.SystemDefault。这允许基于 SslStream 的 .NET Framework 网络 API(例如 FTP、HTTP 和 SMTP)从操作系统或系统管理员执行的任何自定义配置继承默认安全协议。
| 归档时间: |
|
| 查看次数: |
13574 次 |
| 最近记录: |