gpt4 book ai didi

java - SSL 证书升级导致问题

转载 作者:太空宇宙 更新时间:2023-11-03 15:09:56 24 4
gpt4 key购买 nike

我们正在与远程服务器对话以对用户进行身份验证。 Web 服务器使用由 Verisign 签名的 SSL 证书。数据通过 HTTPS 进行交换,我们已将 ThreadSafeClientConnManager 配置为使用 JVM 默认 SSL 工厂:

SchemeRegistry schemeRegistry = new SchemeRegistry();
schemeRegistry.register(new Scheme("http", PlainSocketFactory
.getSocketFactory(), 80));
schemeRegistry.register(new Scheme("https", SSLSocketFactory
.getSocketFactory(), 443));
ClientConnectionManager manager = new ThreadSafeClientConnManager(
sDefaultHttpParams, schemeRegistry);

最近,网络服务器更新了他们的 SSL 证书,这导致我们的应用程序中断。我们可以做些什么来避免这个问题?

请帮忙。

最佳答案

没有什么可以真正“避免”这个问题,因为它不是真正的问题,它是 SSL 证书和权威信任的核心“特征”。

这是一个相当宽泛的问题,更多的细节可以帮助查明确切的问题,但这里是要检查的前两件事。

  1. 他们使用哪个 CA 升级了他们的 SSL 证书?是自签名的吗?
    如果该站点已升级为使用使用非标准根证书颁发机构的 SSL 证书,那么您需要使用 keytool 导入特定的 SSL 证书,以告知本地 JVM 该证书是可信的。如果他们使用新的授权机构(并且您的组织信任该根授权机构),那么您可能需要导入新的根证书授权机构,默认情况下支持大多数专业,但有时我被迫导入新的。

http://download.oracle.com/javase/1.4.2/docs/tooldocs/windows/keytool.html

  1. 确保他们的证书链接正确。我见过的第二个最常见的问题是站点管理员的证书链接(安装)。不幸的是,IE/Mozilla/Java...都使用不同的验证机制来确保 SSL 证书是“有效的”,而且我发现许多网站管理员不知道如何正确地将证书链接到他们网站上适当的根权限。您应该在浏览器中打开证书(我会在多个浏览器中打开它)并检查信任链以确保证书链从站点一直备份到预期的根 CA。 (这也是您检查 #1 的根 CA 的方法)。如果它没有信任链,那么 JVM SSL 验证将失败(而我已经看到 Internet Explorer 在旧版本的 IE 中将非链式证书称为“有效”)。

关于java - SSL 证书升级导致问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5466540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com