• Archiv der Kategorie: SSL

Fehler: SunCertPathBuilderException: unable to find valid certification path to requested target (SSL handshake)

Fehler:

sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Lösung

In dem mir vorliegenden Fall musste die ein CA-Certifikat (welches das vom Server vorgezeigte Certifikat beglaubit) in den lokalen Truststore zugefügt werden.

–> Im vorliegenden Fall kann sich der Server nicht beim Caller authentifizieren.

Debugging-Möglichkeit:

-Djavax.net.debug=all

(In der Run-Config z.B. der Tomcat-Instanz)

Das bewirkt, dass interessantes geloggt wird unter: org.apache.cxf.transport.http.HTTPConduit

Auszüge davon:

Die Certificate-Chain

*** Certificate chain
chain [0] = [
[
 Version: V3
 Subject: CN=myserver.hps.com, OU=Server, OU=CA, O=UBS, C=CH
...
AuthorityInfoAccess [
 [
 accessMethod: caIssuers
 accessLocation: URIName: http://certinfo-http.hps.com/aia/HPS_Server_CA_Test_3.crt
 ...
]
SubjectAlternativeName [
 DNSName: hps.alternative.server.com
 ...
]
]

chain [1] = [
[
 Version: V3
 Subject: CN=HPS Server CA Test 3, OU=CH 027, OU=CA, O=UBS, C=CH
 ...

]

Unter „AuthorityInfoAccess“ wird für das Certifikat ausgewiesen, durch welches andere Certifikat es beglaubigt ist. Jenes Certifikat ist auch weiter unten noch separat ausgewisen.

Das „SubjectAlternativeName“ weist alterntiven Addressen aus, für welche dieses Zertifikat als „Ausweis“ dienen kann. Alternatife zu jenem, welches in parameter „subject“ definiert ist.

Die folgende Zeile sagt, dann „certificate_unknown„, was darauf hin deutet, dass die CA (HPS Server CA Test 3) (das Ende der oben beschribenen Chain nicht bekannt is. Das heisst sie ist nicht in unserem TrustStore vorhanden.

http-apr-8080-exec-9, SEND TLSv1 ALERT: fatal, description = certificate_unknown

 

 

Schließen