首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将证书添加到Java信任库和Ssl握手

将证书添加到Java信任库和Ssl握手
EN

Stack Overflow用户
提问于 2015-10-27 01:32:09
回答 2查看 1.1K关注 0票数 2

我用Java程序(使用HttpUrlConnection)发送http请求到网站,并从那里下载文件。

该网站是"https“,并使用证书。

当我尝试运行我的代码时,它会发生异常:

代码语言:javascript
运行
复制
cause javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

我试着用我的浏览器(Mozilla).And去这个网站当我检查证书时,有三个certificates.The站点包含这些证书。

DigiCert高保障EV根CA

-DigiCert高保障CA-3

-thecompanycert (由DigiCert高保障CA-3颁发)

我用keytool检查我的trustsroe。信任库只有根CA。这足够了吗?或者我必须导入另外两个证书?还是只有-thecompanycert?

向java信任库添加中间证书的风险是什么?我必须这么做吗?

有人能帮上忙吗?

EN

回答 2

Stack Overflow用户

发布于 2015-10-27 01:49:02

如果服务器配置正确,它应该发送站点证书以及构建信任链所需的任何/所有中间证书。您要连接的站点似乎没有发送中间证书。

如果您是站点管理员,您可以纠正这个错误,这样就不必在Java客户端信任存储上胡乱摆弄。

如果您是最终用户,则可以将中间证书添加到Java信任存储区。您不需要添加站点证书。但是,一定要联系网站所有者,并要求他们更正此错误。

几天前我发了一个similar answer

票数 2
EN

Stack Overflow用户

发布于 2016-03-02 01:03:26

假设CA和中间CA已经存在于最近Java版本的默认信任存储中,您不应该需要导入它们,除非您使用的是较早的Java版本。在任何情况下,这都取决于您对CA的信任程度,但Java和大多数浏览器已经信任它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33351978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档