Android:java.security.cert.CertPathValidatorException:找不到证书路径的信任锚

时间:2020-06-05 14:04:37

标签: java android https truststore self-signed-certificate

我使用的是自签名的私有CA证书。我已将证书导入到我的Android设备。我可以在“设置”->“安全性”->“可信凭据”->“用户”下看到它。

我能够访问使用CA签署的证书的网站。而且我能够看到绿色的挂锁。但是,当我从Android应用程序对同一URL进行HTTPS调用时,我得到了Trust anchor for certification path not found

我尝试为HTTPS调用设置自己的SSL上下文,但我能够获得200(成功)。但是我只允许使用默认的Android信任库。如果没有任何效果,那么我的最终选择将是使用自定义SSL上下文。因此,我想确定一下默认的信任存储方式是否可以工作。

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
if(conn instanceof HttpsURLConnection && sslSocketFactory != null){
     ((HttpsURLConnection) conn).setSSLSocketFactory(sslSocketFactory);
}
int responseCode = conn.getResponseCode();

任何进一步调试的想法都会有所帮助,因为我已经坚持了将近一个星期。

谢谢。

0 个答案:

没有答案