创建TLS客户端凭据时发生致命错误。内部错误状态为10013

nei*_*ldt 12 windows ssl tls1.2 windows-server-2016 exchange-server-2016

最近部署了带有Active Directory和Exchange 2016的Windows 2016 Standard Server。

我们已针对服务器和客户端禁用了SSL 1.0、2.0和3.0,并禁用了TLS 1.0和TLS 1.1。

我们在系统日志中反复获得以下条目。是什么原因造成的,以及如何解决。

在此处输入图片说明

nei*_*ldt 27

基本上我们必须为 .NET 4.x 启用 TLS 1.2。更改此注册表对我有用,并停止了填充 Schannel 错误的事件日志。

可以在此处找到有关答案的更多信息

链接信息摘要

在系统 (SCHANNEL) 级别启用 TLS 1.2:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
Run Code Online (Sandbox Code Playgroud)

(等效密钥可能也可用于其他 TLS 版本)

告诉 .NET Framework 使用系统 TLS 版本:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
Run Code Online (Sandbox Code Playgroud)

对于 .NET Framework 4.x 应用程序需要启用和禁用与操作系统不同的协议的边缘情况,这可能是不可取的。

  • 手动添加到注册表或使用 IISCrypto 对我来说都不起作用。仍在寻找解决方案,因为每 10 秒就有 4 个或这些错误意味着几乎不可能检查事件日志中的其他任何内容。 (4认同)
  • 在遇到相同的错误后,我使用 IIS Crypto GUI (https://www.nartac.com/Products/IISCrypto) 进行了这些注册表更改。只需单击“最佳实践”,然后单击“应用”。重启。任务完成 (2认同)