Montag, 20. Juli 2015

LDAPS Anmeldeprobleme nach Upgrade JRE auf 1.8u51

Beim Upgrade einer Atlassian Stash Testumgebung auf 3.11.1 habe ich gleichzeitig die benötigte JRE von 1.8u25 auf 1.8u51 aktualisiert.

Stash ist mit Active-Directory Anbindung auf SSL eingerichtet. Damit prüft das darunter liegende Java die Zertifikate der Domain Controller. Hierzu wurde das Root CA Zertifikat der Enterprise-PKI in den cacerts Store der JRE importiert.

Das funktionierte bei 1.8u25 problemlos.

Jetzt kam aber folgende Fehlermeldung:
"The remote authentication server is not available. Please try again later."
Logmeldung:
Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative names matching IP address 192.168.0.1 found
Nach https://www.java.com/de/download/faq/release_changes.xml wurde ein Reverselookup bei der Zertifikatsprüfung entfernt. 
In Stash selbst ist der Hostname und keine IP konfiguriert.
Trotzdem scheint es bei der Übergabe des Hostnamens auf die weiter unten liegenden Module zwischendurch eine Namensauflösung zu geben. Damit scheint die Funktion, die am Ende prüft ob der Hostname mit dem Zertifikat übereinstimmt, diesen Hostnamen nicht zu haben und bis u51 einen Backresolve im DNS zu machen.
Mit "-Djdk.tls.trustNameService=true" kann man das Verhalten vor u51 wiederhestellen. Damit geht dann die Anmeldung.
Sauber erscheint mir das Vorgehen trotzdem nicht. Muss wohl jemand mal die Funktionen in der Kette überarbeiten.