这是一种情况,
- 我们的应用程序正在通过HTTPS使用REST服务。
- 为了处理SSL,我们已从浏览器导出公共证书(通过访问URL,安装了公共证书)。
- 我们在本地客户端JKS商店导入了该证书。
- 什么客户端(托管REST Web服务的一方)说他们每年都在继续升级证书(证书有效期为一年)。
- 他们已经发送了证书链(Root证书和一个中间权限和NO证书),并要求我们将其导入我们的密钥库,这样无论何时升级,我们的客户端都将始终工作。
- 我怀疑它不会工作。我们可以在信任库中导入证书链,但是当我们调用REST时,我们会收到错误,
醇>
javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:最终用户尝试充当CA
at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
在sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1884)
- 我相信每次升级证书时,都需要在我们的密钥库中导入证书才能使用。
醇>
问题是,这是前进的唯一方法(每次升级服务器公共证书时更新您的信任库),还是有出路?