java.security.InvalidAlgorithmParameterException: trustAnchors参数必须为非空

Nihal Reddy Chinna Choudhary
2023-01-22还剩11分08秒

相关版本:这个信息与…有关Artifactory版本6.x

此错误通常发生在试图将Artifactory连接到远程端点使用HTTPS协议.而问题只会在你尝试的时候出现连接到一个支持应用程序或者一个应用程序运行在支持ssl的反向代理负载均衡器.这种失败将返回以下结果错误信息:

java.security.InvalidAlgorithmParameterException: trustAnchors参数必须为非空

您可以运行以下命令命令来看看SSL证书x射线或任何其他远程端点使用自签名或者如果给定的证书已由已知的证书颁发机构:

Openssl s_client -showcerts -connect myxray.com:443

如果您的任何证书都是自签名的,那么您需要按照本文其余部分的说明将所需的自签名证书导入您的Java可信密钥存储库(cacerts)。如果您注意到SSL证书是由一个已知的证书颁发机构(例如GlobalSign、GoDaddy、DigiCert、Symantec等)签署的,但仍然看到上面的错误消息,那么可能是您的Artifactory实例指向一个无效的信任存储库。

您可以通过查找以下java选项来检查这一点。-Djavax.net.ssl.trustStore = / home /除路径/ /

默认的下的文件ARTIFACTORY_HOME / etc /美元文件夹用于Artifactory的服务安装。如果在默认文件中设置了该选项,则意味着Artifactory将不依赖于下面的默认java信任库$ JAVA_HOME / lib /安全/除并将使用"Java选项中给出的位置。如果java选项中提供的“cacerts”文件无效,则在连接到HTTPS端点时会导致错误。

如果Artifactory实例是独立的邮政编码的Java选项中指定artifactory.defaultARTIFACTORY_HOME / bin /美元文件夹中。检查此文件以查看您的Java选项是否已配置为指向除自定义的位置。下面是一个链接,显示了根据安装类型为Artifactory设置的java选项的位置:

//www.si-fil.com/confluence/display/RTF/Installing+on+Linux+Solaris+or+Mac+OS#InstallingonLinuxSolarisorMacOS-SettingJavaMemoryParameters

如果是这种情况,那么从您的配置文件或者把它指向你有有效的除文件。然后,重新启动Artifactory。删除此java选项-Djavax.net.ssl.trustStore将强制Artifactory选择默认的java信任库下$ JAVA_HOME / lib /安全/除