`
lpali
  • 浏览: 19613 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

转]如何把Https网站中的安全证书导入到java中的cacerts证书库

阅读更多
提示:
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

一个很简单的富客户端到WEB服务器的连接,基本都能够正常建立连接,唯独公司NEXT、TIMS总是报javax.net.ssl.SSLHandshakeException和sun.security.provider.certpath.SunCertPathBuilderException的异常,网上转了转,找到几篇前辈的文章,摘下点重点以便以后继续剽与窃。

在项目开发中,有时会遇到与SSL安全证书导入打交道,如何把证书导入java的cacerts证书库?简单的用NEXT做个演示:

第一步:IE打开https://next.xxxcorp.cn,把要导入java证书库的证书下载
        在该网页安全警报弹出窗口上查看证书--详细信息--复制到文件
        会弹出一个证书导出向导对话框,按提示一直下一步直到完成。
        我把证书保存在C盘,名字为NEXT_CertKey.cer。

第二步:将上面导出的证书导入java中的cacerts证书库
        cmd进入C:\Program Files\Java\jdk1.5.0_06\jre\lib\security目录
        敲入如下命令回车执行
       
keytool -import -alias cacerts 
                -keystore C:\Program Files\Java\jdk1.5.0_06\jre\lib\security\cacerts 
                -file C:\NEXT_CertKey.cer 
                -trustcacerts 

        此时命令行会提示你输入cacerts证书库密码,
        java中cacerts证书库默认密码为changeit,
        Y确认即可,OK,认证已添加至keystore。

附:URLConnection、URL
try { 
      URL url; 
      url = new URL("https://next.xxxcorp.cn"); 
      urlConnection = (HttpURLConnection) url.openConnection(); 
      urlConnection.setDoOutput(true); 
      
      BufferedReader reader = new BufferedReader(new InputStreamReader(urlConnection.getInputStream())); 
      String input = null; 
      while ((input = reader.readLine()) != null) { 
           System.out.println(input); 
      } 
      reader.close(); 
      urlConnection.disconnect(); 
} catch (IOException e) { 
      e.printStackTrace(); 
} 
分享到:
评论

相关推荐

    把Https网站中的安全证书导入到java的cacerts证书库中

    以上就是关于“如何把HTTPS网站中的安全证书导入到Java的cacerts证书库”的主要知识点。通过这个过程,我们可以解决因Java不信任特定证书而引发的连接问题,确保应用程序能够正常访问需要的HTTPS服务。在实际的开发...

    web应用下Java加载证书方式(导入自己的证书库)1

    如果担心证书库不全,可以直接从Azure下载完整的证书库,然后使用`keytool`的`importcert`命令将你的证书导入到这个库中。 对于.NET环境下的证书加载,虽然不在Java的范畴内,但Azure也提供了相应的指导文档,详情...

    java导入wosign证书修改意见1

    在这种情况下,我们需要手动将缺失的证书导入到JDK的证书库中。以下是一个详细的教程,解释如何在JAVA中导入Wosign证书来解决此类问题。 **问题描述:** 当Java程序尝试通过HTTPS连接到使用Wosign根证书签名的服务...

    如何在JAVA中导入Wosign证书1

    安装证书的关键步骤是通过`keytool`命令将证书导入到JDK的证书库中。具体的命令行格式如下: ```shell keytool -keystore "C:\Program Files\Java\jdk1.8.0_71\jre\lib\security\cacerts" -importcert -alias ...

    java获取数字证书信息

    此时,我们需要将自签名的证书导入到JDK的信任证书库中。 导出服务器证书: ```bash keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit ``` 接着,将...

    java根证书

    这种情况下,需要将自签名证书导入到Java的信任存储中,才能避免安全警告。 3. **证书的信任管理**:Java提供了`keytool`命令行工具来管理信任存储。可以添加、删除或更新信任的根证书。此外,也可以通过`cacerts`...

    tomcat证书制作

    因此,必须将客户端证书添加到服务器的信任证书库中。由于服务器通常不接受PKCS12格式的证书库,所以需要将客户端证书导出为CER文件格式,然后导入服务器的keystore。 在操作过程中需要注意正确使用命令参数,保证...

    Java KeyTool使用

    下面是使用 KeyTool 的详细指南,包括创建密钥对、导出证书、将证书导入 Java 信任证书库等内容。 生成密钥对 KeyTool 提供了生成密钥对的功能,用于创建数字证书。可以使用以下命令生成密钥对: `keytool -...

    验证证书unable to find valid certification path to requested target

    这个问题的根本原因是Java的信任存储(通常是JKS格式的证书库,默认位于$JAVA_HOME/lib/security/cacerts文件中)中没有包含服务器证书的根CA证书,或者服务器证书本身不是由受信任的CA签发,或者证书链不完整。...

    https单向验证小工具类

    4. **导入证书到Java的cacerts信任证书库**:Java的 cacerts 文件是系统默认的信任证书库,包含了一系列预信任的证书颁发机构(CA)的根证书。为了让客户端信任服务器,我们需要将服务器的公钥证书导入到这个信任库...

    配置HTTPS证书校验1

    接下来,我们将公钥导入JDK的证书库,使其成为受信任的证书: 1. 打开命令行窗口,使用`keytool`工具,该工具通常位于JDK的bin目录下。在Windows环境下,假设JDK安装在`C:\Program Files\Java\jdk1.8.0_144`,则...

    unable to find valid certification path to requested target 的问题

    这通常涉及到将新的证书导入到`cacerts`文件中,这个文件通常位于Java的`jre/lib/security`目录下。 2. **临时信任特定的证书**:如果只是临时需要连接到某个服务器,可以使用Java的命令行选项`-Djavax.net.ssl....

    CAS单点登录配置步骤说明书

    接下来,需要将证书文件导入到Java的证书库(cacerts)中,使得Java应用能够识别这个自签名证书。操作步骤如下: 1. 将证书文件复制到JDK安装目录下的`jre/lib/security`目录中,路径可能因不同的操作系统和JDK版本...

    Tomcat配置SSL全过程

    2. **导入证书到JRE的可信证书库**:将导出的证书导入到Java运行环境(JRE)的可信证书库中。 ```bash keytool -import -trustcacerts -alias tomcat -file server.cer -keystore D:\Java\jdk1.7.0_05\jre\lib\...

    cas学习笔记学习笔记学习笔记

    最后,导出这个证书并导入到JRE的信任证书库中。 ```shell keytool -delete -alias tomcatsso -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit keytool -genkey -keyalg RSA -alias tomcatsso...

    转载CAS_SSO单点登录实例详细步骤

    接下来,需要将生成的服务器证书导入到JVM的信任证书库中。默认情况下,JVM使用`cacerts`文件来存储信任的证书。命令如下: ``` keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store...

    CAS单点登录操作文档

    本文详细介绍了CAS单点登录的基本概念以及如何在Tomcat环境中实现CAS单点登录的相关操作,包括证书生成、导入、TOMCAT配置SSL支持等方面的知识点。通过这些步骤,可以帮助用户更好地理解和掌握CAS单点登录的实现过程...

Global site tag (gtag.js) - Google Analytics