我正在开发一个平台(java),它集成了多个(微)服务,所有通信都通过SSL进行。所以该平台充当SSL客户端。
我无法将不同服务的所有证书导入我的平台信任库,而是希望为不同的服务使用不同的SSLContext。
这种方法的一个缺点是我们需要维护这么多的信任商店。
我们正在考虑从服务发现中获取证书链并按原样使用证书并将其输入到SSLContext,而不将其导入trusstore然后再使用它。
TL; DR 有没有办法在不使用truststore的情况下在Java中配置SSLContext,但只使用ca bundle作为PEM / cert?
答案 0 :(得分:0)
您可以从this解决方案的第一部分中获取有关创建SSLSocketFactory
的灵感。一旦你破解了你的逻辑,就把它变成你的默认值,如下所示:
HttpsURLConnection.setDefaultSSLSocketFactory(mySslSocketFactory);