最佳答案
我正在用 Java 编写一个应用程序,它通过 HTTPS 连接到两个 Web 服务器。其中一个通过默认的信任链获得受信任的证书,另一个使用自签名证书。当然,与第一台服务器的连接是开箱即用的,而与具有自签名证书的服务器的连接在我使用来自该服务器的证书创建了一个 trust Store 之后才能正常工作。但是,到默认受信任服务器的连接不再工作,因为显然,一旦我创建了自己的服务器,就会忽略默认受信任存储。
我发现的一个解决方案是将来自缺省信任存储库的证书添加到我自己的证书中。但是,我不喜欢这个解决方案,因为它要求我继续管理该 trust Store。(我不能假设这些证书在可预见的将来保持静态,对吗?)
除此之外,我还发现了两个有着相似问题的5年前的帖子:
它们都深入到 JavaSSL 基础设施中。我希望现在有一个更方便的解决方案,我可以很容易地解释在安全检查我的代码。