Authentifizieren SSL-site in java: "pathLenConstraint verletzt - das cert muss das Letzte cert bei der Zertifizierung Pfad"

Ich versuche zu Lesen, von einer sicheren (d.h. SSL) web-Seite in Java-code.
Ich versuche, beide URLConnection (java.net) und Apache HTTPClient.
In beiden Fällen, wenn ich Anfrage, bekomme ich diese exception:

javax.net.ssl.SSLHandshakeException:
Sonne.Sicherheit.validator.ValidatorException:
PKIX path validation failed:
java.Sicherheit.cert.CertPathValidatorException:
basic-constraints-Prüfung fehlgeschlagen:
pathLenConstraint verletzt - das cert
es muss das Letzte cert in der
Zertifizierung Pfad an
com.Sonne.net.ssl.intern.ssl.- Warnungen.getSSLException(Warnungen.java:150)
bei
com.Sonne.net.ssl.intern.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1518)
bei
com.Sonne.net.ssl.intern.ssl.Handshaker.fatalSE(Handshaker.java:174)
bei
com.Sonne.net.ssl.intern.ssl.Handshaker.fatalSE(Handshaker.java:168)
bei
com.Sonne.net.ssl.intern.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:848)
bei
com.Sonne.net.ssl.intern.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:106)
bei
com.Sonne.net.ssl.intern.ssl.Handshaker.processLoop(Handshaker.java:495)
bei
com.Sonne.net.ssl.intern.ssl.Handshaker.process_record(Handshaker.java:433)
bei
com.Sonne.net.ssl.intern.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:818)
bei
com.Sonne.net.ssl.intern.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1030)
bei
com.Sonne.net.ssl.intern.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1057)
bei
com.Sonne.net.ssl.intern.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1041)
bei
Sonne.net.www.Protokoll.https.HttpsClient.afterConnect(HttpsClient.java:402)
bei
sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166)
bei
Sonne.net.www.Protokoll.http.HttpURLConnection.getInputStream(HttpURLConnection.java:934)
bei
Sonne.net.www.Protokoll.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:234)
bei
com.sap.Fluss.coghead.rest.Main.testJavaHTTPConnection(Main).java:45)
bei
com.sap.Fluss.coghead.rest.Main.main(Main.java:32)
Verursacht durch:
Sonne.Sicherheit.validator.ValidatorException:
PKIX path validation failed:
java.Sicherheit.cert.CertPathValidatorException:
basic-constraints-Prüfung fehlgeschlagen:
pathLenConstraint verletzt - das cert
es muss das Letzte cert in der
Zertifizierung Pfad an
Sonne.Sicherheit.validator.PKIXValidator.doValidate(PKIXValidator.java:187)
bei
Sonne.Sicherheit.validator.PKIXValidator.engineValidate(PKIXValidator.java:139)
bei
Sonne.Sicherheit.validator.Validator.validate(Validator.java:203)
bei
com.Sonne.net.ssl.intern.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:172)
bei
com.Sonne.net.ssl.intern.ssl.JsseX509TrustManager.checkServerTrusted(SSLContextImpl.java:320)
bei
com.Sonne.net.ssl.intern.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:841)
... 13 weitere Schäden durch:
java.Sicherheit.cert.CertPathValidatorException:
basic-constraints-Prüfung fehlgeschlagen:
pathLenConstraint verletzt - das cert
es muss das Letzte cert in der
Zertifizierung Pfad an
sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:139)
bei
Sonne.Sicherheit.Anbieter.certpath.PKIXCertPathValidator.doValidate(PKIXCertPathValidator.java:316)
bei
Sonne.Sicherheit.Anbieter.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:178)
bei
java.Sicherheit.cert.CertPathValidator.validate(CertPathValidator.java:206)
bei
Sonne.Sicherheit.validator.PKIXValidator.doValidate(PKIXValidator.java:182)
... 18 mehr

Beachten Sie, dass ich es gelungen, eine nicht-ssl-Verbindung zu einem anderen host zu obwohl.
Ich bin auch in der Lage, um diese Seite anzuzeigen, die mithilfe der browser - die Zertifikate korrekt überprüft es.

Tun Sie ich muss irgendwie die Reihenfolge ändern von Zertifikaten, wie Sie die vom server abgerufen werden?
Gibt es eine Konfiguration, die ich bin fehlt?

Vielen Dank im Voraus,

Lior

InformationsquelleAutor Lior | 2009-05-06
Schreibe einen Kommentar