Java 调用 Azure HTTPS API 证书问题

来源:互联网 发布:手机说唱伴奏软件 编辑:程序博客网 时间:2024/04/26 13:05

Java 访问 Azure HTTPS的API时,会经常报:PKIX:unable to find valid certification path to requested target 这样的错误,这是因为Java有自己的KeyStore,并不会使用系统的证书, Java在自己的KeyStore中找不到对应的信任证书,就会报出此错误。所以如果需要使用Java访问Azure的HTTPS的API,就需要将Azure 网站的证书添加到JDK的KeyStore中。

以下是手动导入的方式:

  1. Azure 使用Wosign的证书, 从http://www.wosign.com/Root/index.htm# 站点下载WoSign 根证书(Certification Authority of WoSign),将.crt 文件后缀改为 .cer

  2. 执行以下命令导入

    keytool -keystore "C:\Program Files\Java\jdk1.8.0_71\jre\lib\security\cacerts" -importcert -alias WoSign -file WS_CA1_NEW.cer

    接下来 会提示输入密码,默认密码为 changeit,输入之后,选择‘是’将其安装到JDK 可信证书库中。

  3. 如果看到以下结果,则导入成功。
    Image.png

也可以借助以下代码,将证书自动带入JDK的KeyStore,请参开此文档:http://arui.me/index.php/archives/69/

0 0
原创粉丝点击