首页 > 解决方案 > 在 .NET 更新某些客户端计算机后,在连接到 Web 服务时尝试将密码更改为 TLS 1.0

问题描述

我们有一个连接到 Web 服务的 WPF 应用程序。

到目前为止,我们已经看到了两起安装 .NET 更新(KB4522741 或 KB4520405)后连接失败的事件

使用 Wireshark 似乎客户端机器正在尝试重新协商到 TLS v1.0(它最初使用 1.2 连接)

这是第 69 行正常连接的 Wireshark 屏幕截图

TLS 正确

这是故障应用程序在同一行号的屏幕截图

TLS 错误

标签: .netwindowstls1.2

解决方案


您可以使用System.Net.ServicePointManager.SecurityProtocol在客户端应用程序中设置所需的 TLS 版本。

强制使用 TLS 1.2

System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

或支持 TLS 1.1 & TLS 1.2

System.Net.ServicePointManager.SecurityProtocol = 
    SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

更多信息: https ://docs.microsoft.com/en-us/dotnet/api/system.net.servicepointmanager.securityprotocol?view=netframework-4.8


推荐阅读