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

时间:2018-07-16 00:00:52

标签: c# asp.net .net ssl tls1.2

我的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;

1 个答案:

答案 0 :(得分:0)

经过反复试验,我意识到在某些时候我已经在Windows注册表中禁用了TLS 1.0。要解决此问题,请导航至:

  

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Protocols \ TLS 1.0 \ Client

,并确保已启用该协议。就我而言,我添加了“ Enabled” REG_DWORD,其值为“ 1”。您可能要更改“ DisabledByDefault”,但我选择了手动替代。要使更改生效,需要重新启动。