net Framework 4.8 + tls.13 = 请求被中止:无法创建 SSL/TLS 安全通道

问题描述 投票:0回答:1

美好的一天。我正在使用 tls1.3 更新 net Framework 4.8 wcf 服务(第三方将在 2024 年初停止支持 tls12),并面临“请求已中止:无法创建 SSL/TLS 安全通道”。 wcf 调用期间出现异常。

操作系统:Win 10 pro build 19045(是的,我知道win 10在“实验”模式下支持tls13),我通过regedit手动启用了TLS13

并强制我的应用程序使用 Tls13

ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls13;

但是上面每次wcf调用都会抛出异常。根据 microsoft net Framework 4.8 完全支持 tls13.

我可以以某种方式修复此异常并从网络框架应用程序成功调用 wcf 第三方(使用 tls13)吗?

附注 部署在同一台机器上的.net 6应用程序可以与wcf第三方通信,没有任何问题(添加

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls13
后),所以我相信这是net 4.8中的问题

P.S.S. 更新到最新的网络框架 4.8.1 没有帮助

c# wcf .net-4.8 tls1.3
1个回答
1
投票

尽管 .NET 4.8 声明支持 TLS1.3,因为它使用 Windows 的 SChannel 来完成其工作,并且根据此处的表:https://learn.microsoft.com/en-us/windows/win32/secauthn /协议-in-tls-ssl--schannel-ssp-

Windows 10 和 Windows 10 Server 版本 1903(2019 年 5 月更新)及更高版本上的本机 SChannel 实现支持 TLS 1.3。 如何在 Windows 10 中启用 TLS 1.3

我建议你查看文档:

如果您的应用程序面向 .NET Framework 4.7 或更高版本

本节介绍如何验证您没有使用特定的 TLS 或 SSL 版本。

如果您确实需要在服务器端使用 TLS 1.3,更好的选择是首先使用 .NET 6。

.NET Framework 的传输层安全 (TLS) 最佳实践

© www.soinside.com 2019 - 2024. All rights reserved.