- 发行说明
- 在开始之前
- 入门指南
- 集成
- 使用流程应用程序
- 创建应用程序
- 正在加载数据
- 自定义流程应用程序
- 发布仪表板
- 应用程序模板
- 其他资源
CData 同步
运行 CData Sync 提取作业时,可能会发生以下错误:
Cannot conclude ssl handshake. Cause: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target.
此错误消息指出安全套接字层 (SSL) 握手可能存在问题,即通过安全连接在两个系统之间验证和启动通信的过程。
系统无法追踪从目标服务器提供的证书到受信任的根证书的信任链。 这可能是由于证书颁发机构 (CA) 链中的问题所致。
证书可能并非由已知且受信任的证书颁发机构签名。 以下是在 SSL 通信期间建立信任的可能解决方案。
这也可能意味着系统没有安装所需的证书,或者证书已过期或无效。
要建立信任链,必须同时有权访问根证书和中间证书。 这些证书共同构成了证书颁发机构 (CA) 链。 根证书必须受系统信任。 中间证书将信任链接到服务器的证书。
C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\bin
。
要设置受信任链,请按照以下步骤操作。
-
配置位于
C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\lib\security\cacerts
的 Java 信任存储 -
在提升的管理控制台中运行以下 PowerShell 命令:
keytool -importcert -alias "intermediate-ca" -keystore "C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\lib\security\cacerts" -file .\intermediate-ca.crt -storepass changeit keytool -importcert -alias "root-ca" -keystore "C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\lib\security\cacerts" -file .\root-ca.crt -storepass changeit
keytool -importcert -alias "intermediate-ca" -keystore "C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\lib\security\cacerts" -file .\intermediate-ca.crt -storepass changeit keytool -importcert -alias "root-ca" -keystore "C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\lib\security\cacerts" -file .\root-ca.crt -storepass changeit
keytool
实用程序是“Java 开发工具包”(JDK) 和“Java 运行时环境”(JRE) 的一部分。 它位于 Java 安装程序的bin
目录中: C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\bin
。
changeit
是默认的信任存储密码。
intermediate-ca.crt
和root-ca.crt
文件必须位于运行命令的当前目录中。
请确保根据您的实际配置和设置调整这些详细信息。
根证书和中间证书现在应已正确安装,并且在系统的证书存储中受信任。 您应该能够启动提取运行,而不会遇到 SSL 信任问题。
-
使用命令
Get-Service "CData Sync" | Restart-Service
重新启动 CData Sync 服务。 -
运行 CData Sync 提取作业。
此问题应该已解决。
Java 运行时环境中的 SSLPoke 可用于测试和调试 SSL 连接。 SSLPoke 工具还可以通过向指定端口上的指定服务器发送测试 SSL/TLS 数据包来帮助确定服务器证书是否存在任何问题。
您可以使用以下命令来测试 Java 应用程序信任的根证书和中间证书。
&"C:\Program Files\CData\CData Sync\jre\jdk-17.0.5+8\bin\java.exe" "-Djavax.net.ssl.trustStore=C:\Program Files\CData\CData
Sync\jre\jdk-17.0.5+8\lib\security\cacerts" "-Djavax.net.debug=ssl,handshake" SSLPoke localhost 443
有关 SSLPoke 的更多信息,请参阅Atlassian 支持文档。