我们针对配置了 https (SSL) 的 Artifactory 实例使用 Maven。问题是证书是由我们的内部 CA 签名的,这迫使我们将 CA 证书导入到 Java 中的 cacerts 文件中。
CA 证书分发到我们的 Windows 平台,并可使用 Java SE6 中引入的 Microsoft CryptoAPI 支持获得。
如果 Maven 能够以某种方式从 Windows keystore 访问中间 CA,那就太好了,因为 Maven 是基于 Java 的(如 Java access to intermediate CAs from Windows keystores? 中所述)。
有人知道这是否可行吗?
最佳答案
要了解 Maven 如何实现此代码,您需要查看 Wagon system ,尤其是 source code .我将从 JSSE 属性 ssl.SocketFactory.provider
开始。如果你创建一个 custom SSLSocketFactory
,您可以让它在初始化时完成从 Windows 获取证书的工作。您还必须找到一种方法将该代码捆绑到 extension 中。以便 Maven 在运行时可以访问它。
关于java - 是否可以使用 MS Windows keystore 作为 Maven 中间 CA 证书的来源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32397736/