我们正在针对配置有https(SSL)的Artifactory实例使用Maven。问题在于证书是由我们的内部CA签名的,这迫使我们将CA证书导入Java中的cacerts文件中。

CA证书已分发到我们的Windows平台,并且可以使用Java SE6中引入的Microsoft CryptoAPI支持来获得。

如果Maven基于Java(如Java access to intermediate CAs from Windows keystores?中所述),那么如果Maven能够以某种方式从Windows keystore 访问中间CA,那将是非常好的。

有人知道这是否可能吗?

最佳答案

要了解Maven如何实现此代码,您需要查看Wagon system,尤其是source code。我将开始的地方是JSSE属性ssl.SocketFactory.provider。如果创建custom SSLSocketFactory ,则可以让它完成初始化时从Windows获取证书的工作。您还必须找到一种将代码捆绑到extension中的方法,以便Maven在运行时可以访问它。

10-07 18:58
查看更多