如何增加 .NET 中的 TLS 握手大小?

Per*_*t28 6 .net c# schannel mtls

我在尝试与 .NET 客户端建立双向身份验证时遇到连接协商失败。

这种情况发生在远程服务器显着增加授权 CA 列表之后。

虽然通过设置更高的值可以在任何 Java 客户端中轻松解决此问题jdk.tls.maxHandshakeMessageSize,但我找不到针对 .NET 的相同解决方法。

(.NET Framework 4.7.2) 和 Internet Explorer 11会出现此问题System.Net.HttpClientSystem.Net.Security.SslStream

Per*_*t28 6

对于依赖 Windows TLS SCHANNEL 的 API,可以通过在 注册表中设置以下 DWORD 值来更改此值。

MessageLimitClient : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Messaging
Run Code Online (Sandbox Code Playgroud)

感谢 MSDN 上的 lextm。