Ich versuche mit HTTPS eine Verbindung zu einem Firmenserver herzustellen. Die Serverzertifikate werden in allen Clients (Windows) gespeichert und ich möchte meine Java-App so konfigurieren, dass sie den Windows Trust Store verwenden.static CloseableHttpClient getClientWindowsTrust() throws Exception {
System.setProperty("javax.net.ssl.trustStoreType", "Windows-ROOT");
SSLContext sslContext = SSLContext.getDefault();
DefaultClientTlsStrategy strat = new DefaultClientTlsStrategy(sslContext);
var connectionManager = PoolingHttpClientConnectionManagerBuilder.create()
.setTlsSocketStrategy(strat)
.build();
return HttpClients.custom()
.setConnectionManager(connectionManager)
.build();
}
< /code>
Die erforderlichen Zertifikate befinden sich im Windows Trust Store und andere Apps (von denen ich annehme, dass sie diese verwenden) funktionieren in Ordnung.TransportContext.java:363|Fatal (CERTIFICATE_UNKNOWN): PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
< /code>
Was könnte ich fehlen? Wie kann ich feststellen, wo genau der Pfadaufbau fällt?
Wie nutze ich Windows Trust Store, wenn ich SSL benutze? ⇐ Java
-
- Similar Topics
- Replies
- Views
- Last post