![](/img/trans.png)
[英]Server Error: The request was aborted: Could not create SSL/TLS secure channel
[英]Error The request was aborted: Could not create SSL/TLS secure channel. only on Windows Server 2012
我知道关于这个错误的类似问题很少,但我的问题有点不同,因为我的代码在本地工作,实际上来自 Windows 10,当我将它部署在生产环境(Windows Server 2012)上时它不起作用。
所以这就是故事。 我尝试联系服务人员,但出现错误:
System.Net.Http.HttpRequestException:发送请求时出错。 ---> System.Net.WebException:请求被中止:无法创建 SSL/TLS 安全通道。
几天前开始发生此错误,我们从该服务获得了 email,告诉他们不再支持某些密码。 这是他们的 email:
这意味着从 12 月 1 日起,我们将仅支持以下密码套件:
Cipher suites (TLS 1.3):
TLS_AES_128_GCM_SHA256
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
Cipher suites (TLS 1.2):
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
CDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-CHACHA20-POLY1305
ECDHE-RSA-CHACHA20-POLY1305
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES256-GCM-SHA384
我发现很少有解决方案建议包含我已经完成的所有 TLS 协议。 这是我的代码的一部分:
ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
| SecurityProtocolType.Tls11
| SecurityProtocolType.Tls12
| SecurityProtocolType.Ssl3;
但问题是一样的。 所以呼叫服务在我的本地工作,但在 Windows 服务器上不起作用。
我还在注册表中编译了密码套件(位置 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Cryptography\Configuration\Local\SSL\00010003),我发现我的 Windows 10 和 Windows 服务之间存在差异。 所以我尝试将所有密码从我的计算机手动复制到 windows 服务器,但我仍然遇到同样的错误。
所以我不知道可能是什么问题。 请帮忙!
ps 我忘了提到我尝试了许多不同的解决方案,比如只包括 TLS1.2 协议。 这是也不起作用的代码的一部分:
ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
那应该是密码套件问题。
Windows 的先前版本中没有一些密码套件。
使用 ssllabs 或 Wireshark 扫描您的应用程序以了解问题。 启用在目标服务器上禁用的受支持的密码套件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.