SVN, Atlassian Crowd, Windows DOS-Box und die Umlaute in Passwörtern

Ein interessantes Problem mit deutschen Umlauten und auch eventuell anderen Sonderzeichen in Kennwörtern konnten wir in der Firma beobachten.

Da ich dazu auch nach längerem Suchen keine Fundstellen im Netz gefunden habe, schreibe ich dazu einfach mal ein paar Sätze, um eventuell auch Betroffenen einige Hinweise in der Google-Suche zu geben.

Hintergrund

Wir authentifizieren unsere Subversion/SVN-Nutzer über Atlassian Crowd, einem Verzeichnisdienst, der speziell für Produkte von Atlassian, wie JIRA und Confluence gemacht ist, aber auch die Anbindung von Applikationen von Drittanbietern wie Apache usw. erlaubt. Crowd wiederum kann mit verschiedenen anderen Verzeichnisdiensten gekoppelt werden, so dass man für Nutzer unterschiedlicher Verzeichnisse eine Anmeldung und sogar ein SSO an verschiedene Dienste realisieren kann.

Wir nutzen Crowd, um Benutzer mehrerer unterschiedlicher Windows-Domänen per Anbindung an die ActiveDirectory-Server zu authentifizieren und damit eine firmenübergreifende Anmeldung an zentralen Werkzeugen wie JIRA und Confluence zu erlauben.

Problem

Bei einzelnen Anwendern funktionierte das Arbeiten mit  SVN über die Windows-Kommandozeile nicht korrekt. Bizarrerweise aber nur, wenn das Kennwort im Dialog mit svn eingeben wurde.

D.h., wurde svn mit dem Parameter „–password=BlaBlüBlaBla22“ aufgerufen, ging alles glatt, wurde dagegen kein Kennwort mitgegeben und das Passwort erst auf die entsprechende Abfrage von SVN hin eingegeben, kam es zu einen Authentifizierungsfehler, im Apache-Logfile fand sich dann nur lapidar „Password mismatch“.

Beteiligte Tools

  • Windows 7 Professional 64bit
  • TortoiseSVN 7.1.13 64Bit mit installierten Kommandozeilen-Werkzeugen (svn)
  • Atlassian Crowd 2.7.2
  • Crowd Apache Connector 2.0

Lösung

Nach Betrachtung der wenigen aufgetauchten Einzelfälle war klar, dass die Gemeinsamkeit der Kennwörter, die Probleme machten, der jeweils vorhandene deutsche Umlaut war.

Offenbar behandelt der svn-Kommandozeilen-Client Umlaute in Passwörtern anders, wenn sie über die Kommandozeile direkt mitgegeben werden, statt über den Dialog eingegeben zu werden.

Weiterhin kann man das Problem komplett verhindern, indem man vor dem Aufruf (oder generell) des svn-Clients die in der DOS-Box von Windows 7 verwendete Codepage, also die Zeichensatz-Kodierung, mittels Befehl „chcp“ ändert.

Durch bloße Eingabe von „chcp“ in der DOS-Box lässt sich die aktuell verwendere Codepage anzeigen, bei uns ist das standardmäßig die Codepage 850 (DOS-Latin-1).

Ändert man die Codepage mittels „chcp 1252“ auf die Codepage 1252 (was ISO 8859-1 entspricht), ist das Problem behoben.

Die UTF-8-Codepage 65001 funktioniert leider ebenfalls nicht, hier ist es gar nicht möglich, im Dialog mit svn den Umlaut überhaupt einzugeben.

Fazit

Einfach die Codepage in der Dos-Box vor SVN-Aufruf per „chcp 1252“ auf Codepage 1252 ändern, schon sind alle Subversion-Kennwort-Probleme mit Umlauten behoben, zumindest im Zusammenspiel mit Crowd und dem Apache-Crowd-Connector.

Consent Management Platform von Real Cookie Banner