猿问

ASP.NET 应用程序调用 TLS 1.0 和 TLS 1.2 Web 服务

我的 ASP.NET 应用程序调用多个供应商的 Web 服务,这些服务最近已重新配置为强制执行 TLS 1.2。但是,其中一个提供商落后并继续使用 TLS 1.0。结果,应用程序失败

无法创建 SSL/TLS 安全通道

该项目的目标是 .NET 4.5 运行时,我已将其更改为 4.7.1 以使用 TLS 1.2 作为默认值以避免代码更改(4.6 就足够了)。当然,这破坏了使用 TLS 1.0 配置的 Web 服务的应用程序部分。

如下所示指定安全协议无效。

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls | SecurityProtocolType.Ssl3;



慕码人8056858
浏览 475回答 1
1回答

jeck猫

经过反复试验,我意识到在某些时候我已经在 Windows 注册表中禁用了 TLS 1.0。要解决此问题,请导航至:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client并确保协议已启用。就我而言,我添加了值为“1”的“已启用”REG_DWORD。您可能想更改“DisabledByDefault”,但我选择了手动覆盖。更改需要重新启动才能生效。
随时随地看视频慕课网APP
我要回答