Ich möchte meinen Chef davon überzeugen, dass wir git für die Versionskontrolle verwenden sollten. Er sagt, dass es unbedingt Benutzer über unseren zentralen LDAP-Server authentifizieren muss.
Ich habe mir die verschiedenen Lösungen angesehen (gitweb, gitorious ...) und konnte keine endgültige Antwort darauf finden, ob sie die LDAP-Authentifizierung unterstützen.
Die einzige Lösung, die ich finden konnte, war eine Apache + mod_ldap-Einstellung. Aber das würde bedeuten, dass der Benutzer, der sich bei LDAP authentifiziert, nicht unbedingt mit dem tatsächlichen Git-Benutzer identisch ist, oder? (Nicht, dass dies ein riesiges Problem ist, sondern nur etwas, das mich nerven würde.)
Wie können Git-Benutzer am besten über LDAP authentifiziert werden?
Antworten:
Während für die meisten öffentlichen Git-Dienste Schlüssel verwendet werden, erfolgt die eigentliche Authentifizierung über ssh. SSH ist mehr als in der Lage, sich gegen ldap zu authentifizieren. Wenn Sie Zugriff auf die Dateien haben, können Sie in die Stadt gehen.
AKTUALISIEREN
Git unterstützt jetzt (seit diesem Jahr, wer wusste das schon?) Einen intelligenten http-Push-Mechanismus. Der alte Weg bestand darin, einen Webdav-Server zu verwenden, aber sowohl das Abrufen als auch das Pushen waren sehr langsam und ineffizient. Jetzt können Sie über http so ziemlich die gleichen Geschwindigkeiten erzielen wie mit ssh: // oder git: //. Dies bedeutet, dass Sie Apache oder Nginx verwenden und ein beliebiges http-Authentifizierungsschema verwenden können, das Sie möchten. (Ldap, Datenbank usw.)
Mehr Infos von ProGit und Github .
quelle
Sie können eine Git-Backend-Authentifizierung mithilfe von Skripten für Git-Hooks vor dem Empfang suchen und entwickeln. Sie müssen nicht unbedingt ein Shell-Skript sein.
Wenn Sie zum Beispiel in den "Pre-Receive" -Hook schauen, werden Sie feststellen , wie Sie den Typen authentifizieren können, der in dieser Situation versucht, mit einem Ruby-Skript in das Remote-Repo zu gelangen. Wenn Sie möchten und ein bisschen Zeit damit verbringen möchten, können Sie dasselbe mit Ihrer Lieblingssprache und ihrer ldap-Bibliothek tun :-)
quelle