java - SSL 问题 - TFS 的 Jenkins 从站连接问题

标签 java security ssl jenkins tfs

  1. 升级了 Jenkins。
  2. 创建了一个奴隶。
  3. 在从机上安装最新的 JDK 并启动从机。
  4. 当用 slave 标记一个作业并运行它时,出现上述错误..
  5. 在 google 上进行了搜索,并根据搜索将我的目标 TFS 的公共(public)证书添加到 C:\Program Files (x86)\Java\jre1.8.0_131\lib\security\cacerts 中的 java keystore 。
  6. 它适用于 2 个作业,出于某种目的,我取消标记该作业并在 master 上运行,我再次将其标记回 slave 并运行它.. 问题又回来了。
  7. 尝试再次添加证书,但其提示的证书已经在 keystore 中.. 7 确实卸载并重新安装了 slave 并更改了 JAVA 版本.. 运气不好.. 以下日志的其余部分 5)

Building remotely on
node1
in workspace C:\Builds\Jenkins\workspace\Foot_Driver Querying for remote changeset at '$/AEXX/' as of 'D2017-06-23T15:26:13Z'... FATAL: com.microsoft.tfs.core.exceptions.TECoreException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested targe

最佳答案

通过将链中的所有证书添加到 cacerts,问题得到解决。

  1. 使用(将您的域替换为 google.com)获取链中的所有证书列表
    openssl s_client -host google.com -port 443 -prexit -showcerts
  2. 将每个证书复制到一个单独的 .pem 文件中,例如 - VS_cert1.pem、VS_cert2.pem
  3. 将所有证书导入java cacerts
    keytool -import -alias VS1 -file "C:\Users\xxxx\Desktop\Temp\VS_cert1.pem"-keystore "C:\Program Files (x86)\Java\jre1.8.0_131\lib\security\cacerts"< br/> keytool -import -alias VS2 -file "C:\Users\xxxx\Desktop\Temp\VS_cert2.pem"-keystore "C:\Program Files (x86)\Java\jre1.8.0_131\lib\security\cacerts"
  4. 退回服务。

关于java - SSL 问题 - TFS 的 Jenkins 从站连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44728080/

相关文章:

java - 使用 JDBCTemplate 将 List<String> 作为 "IN"子句中的查询参数传递时出现 PSQL 异常

security - iframe 和 ssl 安全

ios - iOS App Store 现在支持动态下载代码。我该如何实现?

php - HTML 站点的复制安全性

amazon-web-services - 我如何自动续订我的 AWS 证书,为什么它不接受我分配的新证书?

android - 两个 Android 设备之间的 SSL 连接

java - 在 Java 中模拟关键输入以进行 JUnit 测试

java - 搜索并替换包中所有 java 文件中的文本

c# - 访问 PC 音频输入流

swift - 我想找到一种方法来定位确切的失败请求。(CFNetwork SSLHandshake 失败(-9806))