java无法验证证书_如何解决“证书无效,不能用于验证本网站的身份”错误?...

问题是,如何解决“证书无效并且不能用于验证本网站身份”的错误?。如何解决“证书无效,不能用于验证本网站的身份”错误?

下面是详细信息:

我有一个签名的小已经工作正常,直到我更新Java来8u25(1.8.0_25-B18)。现在,应用程序会显示一条警告消息“您是否想继续?与此网站的连接不可信”。此消息中还有一个注释,“The certificate is not valid and cannot be used to verify the identity of this website”。

该小程序加载没有问题。但是,当用户尝试使用该应用程序的特定功能时,会显示警告消息。

我检查Java控制台当这种情况发生,而这些线条后立即显示此警告消息:

security: Obtain certificate collection in SSL Root CA certificate store

security: Invalid certificate from HTTPS server

network: Cache entry not found [url: https://sub.domain.net:9876, version: null]

该applet签名正确,到目前为止,它符合Java所有的安全要求。当应用程序尝试使用像https://sub.domain.net:9876这样的HTTPS url进行内部连接时,似乎会发生此问题。该网站的SSL证书是有效的,由GoDaddy发布并且没有过期。

同样,在将我的JRE更新为8u25后开始发生这种情况。我测试了将违规URL添加到Java安全例外列表中,但没有成功。

下面是这个问题的一些截图:

这是显示警告信息:

fMdYC.png

8XdAz.png

uyH4D.png

UqHKn.png

编辑2014年10月18日:

问题标题d也可以在“Oracle Community”中增加答案选项: Question in Oracle Community。

编辑2014年10月21日:

我注意到了这一点:当我点击链接“更多信息”中的“安全警告”对话框中显示,显示的原因说:

该应用程序正从安全证书指定的一个以外的站点下载。

从 “sub.domain.net”

期待“*。域下载。NET”

该消息称,应用程序被下载了‘sub.domain.com’,那是假的。应用程序(applet)中已经下载,并且仅使用该域内部HTTPS请求,获取/发送的业务数据,而不是下载额外的罐,JNLPs等

+2

根据证书可能会为不同的主机名发在你的绝密屏幕截图的错误信息那么你在连接中使用的那个。可能是,Java8现在对证书中的名称进行了更严格的检查。 –

2014-10-18 06:06:03

+0

谢谢你的帮助。是的,这是可能的,但网站的证书是通配符,用于多个子域(https://my.domain.net,https://test.domain.net,https://domain.net ),所以我希望这个证书对Java也有效。如果不是这种情况,这意味着Java现在要求为每个域/子域指定一个单独的证书。我不确定问题的另一个原因是证书是否以大写字母提到网站的域名。 –

2014-10-18 15:07:20

+1

如果没有看到证书,很难说出了什么问题。但也可能是这样的,即Java 7没有在证书中验证主机名,而Java 8没有完成验证。另见http://stackoverflow.com/questions/18139448/how-should-i-do-hostname-validation-when-using-jsse –

2014-10-18 18:25:33

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值