尝试安装 Microsoft Dynamics CRM Server 2016 时,SECDoClientHandshake () SSL 安全性错误连接SQL Server
本文提供了尝试安装 Microsoft Dynamics CRM Server 2016 时发生的错误的解决方案。
适用于:Microsoft Dynamics CRM Server 2016
原始 KB 编号: 4077486
症状
尝试安装 Dynamics CRM Server 2016 时,环境诊断向导失败并显示以下错误消息:
错误|检查 SqlServerValidator:失败:无法连接到以下SQL Server:“服务器名称”。 验证服务器是否已启动并运行,以及是否SQL Server管理凭据。 [DBNETLIB][ConnectionOpen (SECDoClientHandshake () ) .]SSL 安全错误。
原因
Dynamics CRM Server 2016 向导要求通过 Microsoft OLE DB 提供程序进行连接检查,以便SQL Server开始创建数据库。 安装文档列出了在安装过程中 安装的软件 。 它包括安装或升级Microsoft Dynamics CRM服务器。 安装程序使用此本机客户端,在配置数据库创建阶段,需要 OLE DB 连接。
当通过通用数据链接 (UDL) 文件为给定SQL Server创建测试连接时,会重现此连接失败。
- 打开 记事本。
- 将文件另存为 Connectivity Test.udl ,将文件类型保存为 “所有文件”。
- 打开保存的文件。
- 选择 Microsoft OLE DB Provider for SQL Server 作为提供程序。
- 提供服务器连接和身份验证详细信息。
- 测试数据库的连接或打开列表。
- 连接失败并显示相同的错误消息。
它失败,因为 Dynamics CRM Server 2016 与 SQL Server 之间的安全连接需要为 OLE DB 提供程序启用 TLS 1.0 for SQL Server。 SQL Server可能未为安全通道通信启用 TLS 1.0。
即使SQL Server上启用了 TLS 1.1 或 1.2,连接也可能失败,因为用于SQL Server的 OLE DB 提供程序仅支持 TLS 1.0。 本文中列出的提供程序提供了对 TLS 1.2 的支持。
解决方案
在 SQL Server 上为 microsoft OLE DB 提供程序启用 tls 1.0 for SQL Server。 可以通过以下注册表更改启用 TLS 1.0:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server] "Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server] "DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client] "Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client] "DisabledByDefault"=dword:00000000
如果组织策略要求禁用 TLS 1.0,则可以在安装完成后完成:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server] "Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server] "DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client] "Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client] "DisabledByDefault"=dword:00000001
可能还需要在 Dynamics CRM Server 2016 上启用 TLS 1.0 作为客户端。
更多信息
如果组织策略需要禁用 TLS 1.0,则可以在安装完成后在 SQL Server 和 Dynamics CRM Server 2016 上禁用 TLS 1.0。
References