Tim*_*Tim 49 java ssl-certificate
我在尝试启动应用程序时收到此错误:
Sun.security.validator.ValidatorException: PKIX path validation failed:
java.security.cert.CertPathValidatorException: java.net.UnknownHostException:oscp.thawte.com
Run Code Online (Sandbox Code Playgroud)
该应用程序位于封闭网络后面,无法访问oscp.thawte.com.是否有可以禁用此功能的java设置?
MK.*_*MK. 48
-Dcom.sun.net.ssl.checkRevocation=false
Rea*_*wTo 16
不完全是设置,但您可以覆盖默认的TrustManager和HostnameVerifier以接受任何内容.不是一种安全的方法,但在您的情况下,它是可以接受的.
完整示例:修复HTTPS中的证书问题
除了上面的答案。您可以通过实现 TrustManager 以编程方式执行此操作:
TrustManager[] trustAllCerts = new TrustManager[] {
new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
@Override
public void checkClientTrusted(X509Certificate[] arg0, String arg1)
throws CertificateException {}
@Override
public void checkServerTrusted(X509Certificate[] arg0, String arg1)
throws CertificateException {}
}
};
SSLContext sc=null;
try {
sc = SSLContext.getInstance("SSL");
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
try {
sc.init(null, trustAllCerts, new java.security.SecureRandom());
} catch (KeyManagementException e) {
e.printStackTrace();
}
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
// Create all-trusting host name verifier
HostnameVerifier validHosts = new HostnameVerifier() {
@Override
public boolean verify(String arg0, SSLSession arg1) {
return true;
}
};
// All hosts will be valid
HttpsURLConnection.setDefaultHostnameVerifier(validHosts);
Run Code Online (Sandbox Code Playgroud)
然而,这对于生产来说并不是一个好的做法。
这个关于如何在 Java中禁用 SSL 证书验证的示例包含一个可以复制到项目中的实用程序类。
使用Java软件发行版中的cli实用工具keytool导入(并信任!)所需的证书
样品:
从cli更改目录到jre \ bin
检查密钥库(在jre \ bin目录中找到的文件)
keytool -list -keystore .. \ lib \ security \ cacerts
输入密钥库密码:changeit
从所需的服务器下载并保存所有证书链。
添加证书(在需要删除文件“ .. \ lib \ security \ cacerts”上的“只读”属性之前)密钥工具-alias REPLACE_TO_ANY_UNIQ_NAME-导入-keystore .. \ lib \ security \ cacerts-文件“ r:\ root”。 crt”
我偶然发现了这样一个简单的提示。其他解决方案需要使用InstallCert.Java和JDK
来源:http : //www.java-samples.com/showtutorial.php?tutorialid=210
| 归档时间: |
|
| 查看次数: |
148606 次 |
| 最近记录: |