Saya ingin meyakinkan bos saya bahwa kita harus menggunakan git untuk kontrol versi. Dia mengatakan, bahwa itu mutlak harus mengotentikasi pengguna melalui server LDAP pusat kami.
Saya melihat berbagai solusi (gitweb, gitorious ...) dan tidak dapat menemukan jawaban yang pasti tentang apakah mereka mendukung otentikasi LDAP.
Satu-satunya solusi yang saya dapat menemukan sedikit info adalah pengaturan Apache + mod_ldap. Tetapi itu berarti bahwa pengguna yang mengautentikasi pada LDAP tidak harus sama dengan pengguna git yang sebenarnya, bukan? (Bukannya ini masalah besar, tapi hanya sesuatu yang akan menggangguku.)
Jadi, apa cara terbaik untuk mengotentikasi pengguna git melalui LDAP?
Jawaban:
Sementara kunci digunakan untuk sebagian besar layanan git publik, otentikasi sebenarnya terjadi melalui ssh. SSH lebih mampu mengautentikasi terhadap ldap. Sejauh menyangkut git setelah Anda memiliki akses ke file Anda dapat pergi ke kota.
MEMPERBARUI
Git sekarang mendukung (pada tahun ini, siapa yang tahu?) Mekanisme mendorong http pintar. Cara lama adalah menggunakan server webdav, tetapi keduanya mengambil dan mendorong sangat lambat dan tidak efisien. Sekarang Anda bisa mendapatkan kecepatan yang hampir sama dengan http seperti yang Anda lakukan ssh: // atau git: //. Ini berarti Anda dapat menggunakan apache atau nginx dan menggunakan skema auth http apa pun yang Anda inginkan. (Ldap, database, dll.)
Info lebih lanjut dari pro git dan github .
sumber
Anda dapat mencari / mengembangkan otentikasi git backend menggunakan skrip kait pra-terima git. Mereka tidak harus menjadi skrip shell.
Misalnya, jika Anda melihat hook pra-terima gitorious , Anda akan melihat cara untuk mengotentikasi orang yang mencoba mendorong repo jarak jauh dalam situasi itu menggunakan Ruby Script. Jika Anda ingin dan meluangkan sedikit waktu Anda untuk itu, Anda dapat melakukan hal yang sama menggunakan bahasa favorit Anda dan pustaka ldapnya :-)
sumber