zoukankan      html  css  js  c++  java
  • 如何把安全证书导入到java中的cacerts证书库

    一、问题描述

    当java访问网址报错

    javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target时候

    问题是自己的java环境中没有网站的证书。

    通过将网站的安全证书导入到自己的javacacerts环境中可以解决该问题。

    二、具体步骤

    每一步:进入某个https://www.xxx.com开头的网站,把要导入的证书下载,
        在该网页上右键 >> 属性 >> 点击"证书" >>
        再点击上面的"详细信息"切换栏 >>
        再点击右下角那个"复制到文件"的按钮
        就会弹出一个证书导出的向导对话框,按提示一步一步完成就行了。
        例如:保存为wcceca.cer, 放在d盘下

    第二步:如何把上面那步的(wcceca.cer)这个证书导入java中的cacerts证书库里?

             如:我的 jdk安装这个目录在

            C:Program FilesJavajdk1.8.0_131

    开始 >> 运行 >> 输入cmd 进入dos命令行 >>
    再用cd进入到C:Program FilesJavajdk1.8.0_131jrelibsecurity这个目录下
    敲入如下命令回车执行

    keytool -import -alias cacerts -keystore cacerts -file D:wcceca.cer

    你敲入changeit就行了,这java中cacerts证书库的默认密码,

    导入后用-list查看

    keytool -list -keystore cacerts

    以后更新时,先删除原来的证书,然后导入新的证书
    keytool -delete -alias akazam_email -keystore cacerts
    keytool -import -alias akazam_email -file akazam_email.cer -keystore cacerts

     

    注意JAVA_HOME设置中如果有空格,会java执行错误,可以把环境变量JAVA_HOME中C:Program Files缩写为C:Progra~1

  • 相关阅读:
    一顿午饭引发的风波
    用exp无法导出空表解决方法/用exp导出数据时表丢失原因
    程序员的不归路
    IIS权限设置
    超级基础搭建Android开发环境
    业务流程图与数据流程图的比较
    发布asp.net应用程序后,其中导入、导出excel报错的解决方案
    Validation of viewstate MAC failed异常的原因及解决方法
    orarcle11g中服务代表的意思
    最新BIOS设置中英文对照表
  • 原文地址:https://www.cnblogs.com/StarZhai/p/13665290.html
Copyright © 2011-2022 走看看