[英]NewRelic java agent unable to identify .jks trust store
我們正在使用 NewRelic java 代理來監控 java 應用程序。 該應用程序使用帶有 .jks 擴展名的自定義信任庫。 但是,默認情況下或通過顯式指定信任庫的路徑,代理不會識別信任庫並引發錯誤。
我們如何在不更改擴展名的情況下使用此信任庫,因為我們需要按原樣使用。
信息:使用 ca_bundle_path:D:\Java\jdk1.8.0_311\jre\lib\security\cacerts 2022-01-24T16:55:40,590+0530 [7048 1] com.newrelic 錯誤:無法生成 ca_bundle_path 證書。 驗證證書格式。 不會處理進一步的證書。 java.security.cert.CertificateException:無法解析證書:java.io.IOException:空輸入
Java 代理依賴於僅接受.pem
文件的默認 X.509 CertificateFactory。
相關線路:
try (InputStream is = new BufferedInputStream(new FileInputStream(caBundlePath))) {
CertificateFactory cf = CertificateFactory.getInstance("X.509");
// ...
caCerts.add((X509Certificate) cf.generateCertificate(is));
// ...
}
如果您可以為接受.pks
文件的 X.509 CertificateFactory 覆蓋 SPI,您也許可以使用您的文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.