- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在研究 TrustStrategy 以与 RestTemplate 结合使用。在 isTrusted 方法中,检查(打印)的证书与 TrustManagerFactory 中定义的证书不同(此处打印的证书来自 cacerts 文件)。为什么会这样?幕后发生了什么?
编辑:isTrusted 方法记录我公司的证书。 acceptedIssuers 记录来自 cacerts 文件的证书。
Edit2:TrustStrategy 的方法称为运行时。 TrustManagerFactory 的证书称为编译时。也许这是问题/解决方案的一部分。
TrustStrategy acceptingTrustStrategy = new TrustStrategy() {
@Override
public boolean isTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
for (X509Certificate certificate: x509Certificates) {
log.info(certificate.getIssuerX500Principal().getName());
}
return true;
}
};
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance("X.509");
trustManagerFactory.init((KeyStore) null);
TrustManager[] trustManagers = trustManagerFactory.getTrustManagers();
X509TrustManager trustManager = (X509TrustManager) trustManagers[0];
X509Certificate[] acceptedIssuers = trustManager.getAcceptedIssuers();
for(X509Certificate ai : acceptedIssuers) {
log.info(ai.getIssuerX500Principal().getName());
}
最佳答案
我自己找到了答案!所以我误解了在 TrustStrategy 的 isTrusted 方法中记录的证书是客户端证书。事实上,这些是服务器返回的证书(因此只能在运行时记录)。 TrustManagerFactory 中的证书来自 cacerts 文件,是客户端信任的证书。
关于java - TrustStrategy 证书与 TrustManagerFactory 中的证书不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54572118/
我正在研究 TrustStrategy 以与 RestTemplate 结合使用。在 isTrusted 方法中,检查(打印)的证书与 TrustManagerFactory 中定义的证书不同(此处打
我正在尝试运行一个发出 HTTP/HTTPS POST 请求的插件。它声明了所需的依赖项,即 httpclient 和 httpcore。我分别使用版本 4.5.3 和 4.4.6。尽管全部正确导入(
我在较新版本的 HttpClient 上遇到了问题。 TrustStrategy 似乎不能再使用了;但是,我需要在我的 TrustStrategy 上设置方法 isTrusted 以初始化 SSLSo
我正在 tomcat 服务器上运行一个应用程序。调用特定函数时出现以下错误: java.lang.NoClassDefFoundError: org/apache/http/ssl/TrustStra
我从根本上理解我的程序中的这段代码正在实现什么目的。然而,由于对这里发生的事情了解有限,在我看来可能有更好的方法来做到这一点。 // Accept ALL certificates by ov
我是一名优秀的程序员,十分优秀!