Aktif dizini olan Mercurial (hg)


15

Mercurial'ı Active Directory'deki kullanıcıların kimliğini doğrulayacak şekilde ayarlayabilir miyim? Benim durumumda, hg Windows, Linux veya FreeBSD üzerinde çalışabilir, ancak AD kullanıcılarını kullanmam gerekiyor.

Not: mümkünse, lütfen beni bir eğiticiye yönlendirin.

Yanıtlar:


11

Bu eğitici yazıyla başladım .

Sunucuda aşağıdaki ek değişiklikleri yaptığımı bitirdikten sonra (Windows 2008):

  • IIS'yi SSL kullanacak şekilde yapılandırılmış;
  • Site için anonim kimlik doğrulama devre dışı bırakıldı;
  • Site için Temel ve Windows kimlik doğrulaması etkinleştirildi;
  • Havuz klasöründe yapılandırılmış NTFS izinleri.

Ayrıca deponuzun .hg\hgrcdosyasına aşağıdaki satırları eklemeniz gerekir :

İstemci tarafında açıkça kullanıcı adı ve şifre belirtmem gerekiyordu.

[web]
allow_push = *

5

Windows, unix ve AD / LDAP için kimlik doğrulaması yapabilen entegre bir sistem arıyorsanız RhodeCode'u deneyin http://rhodecode.com Depolara hizmet veren yerel bir bitbucket / github örneği. İzin sistemi ve kolay kullanıcı yönetimi, kod inceleme vb.


RhodeCode için Yay! :-)
Martin Geisler

4

Mercurial'ın web sunucusunu barındırmak için Active Directory / IIS'yi kullanmanıza izin veren birkaç ay önce 4 bölümlük bir blog yazısı yazdım. Bir tedavi çalışır:

http://www.endswithsaurus.com/2010/05/setting-up-and-configuring-mercurial-in.html

Size yol gösterir:

  • IIS içinde Mercurial kurulumu
  • Python için ISAPI uzantılarını yapılandırma
  • Çirkin URL'leri gizlemek için ISAPI yeniden yazma
  • Active Directory kullanarak güvenlik ayrıcalıklarının yapılandırılması
  • Web kullanıcı arayüzünün özelleştirilmesi

+1, harika blog yayınları. Mercurial'ı hem Windows hem de Linux projelerimiz için kullanıyoruz. Bu kılavuzu IIS 7.5 için güncelleme şansınız var mı?
jscott

Sunucumu yükseltmeye geldiğimde olacağım.
BenAlabaster

3

Ben zaten AD ile IIS'de Mercurial kurulumu için iyi bir rehber verdi.

Sadece şunu eklemek isterim, bilmeniz gereken en önemli şey Mercurial'daki yerleşik (Hızlı) CGI betiğinin kullanıcıların kimliğini doğrulamamasıdır . Sağladığımız CGI betiği, kimlik doğrulamasını yapmak için bir ön uç web sunucusuna dayanır. Bu nedenle , komut dosyasını çağırmadan önce kimlik doğrulaması yapmak için Apache, IIS, nginx, ... ayarlarını yapmanız gerekir . (Ancak, AD'ye de bağlayabileceğiniz LDAP desteğine sahip Bitbucket benzeri bir sistem istiyorsanız mükemmel RhodeCode'u kullanabilirsiniz .)

Endişelerin bu şekilde ayrılması Mercurial'ı çok esnek hale getirir: Active Directory kimlik doğrulaması istiyorsanız, web sunucunuzun bunu yapması için sadece standart eklentiyi kullanırsınız. Birçok site zaten bu düzene sahip olacak ve Mercurial "sadece işe yarayacak" :-)

Mercurial hiçbir zaman şifreleri kontrol etmez - kimlik doğrulama kısmı. Ancak, yetkilendirme yapabilir , yani kullanıcıların itme veya çekme işlemlerine izin verebileceği veya engelleyebileceği anlamına gelir. Bu, standart REMOTE_USERCGI değişkeninde depolanan kullanıcı adına göre yapılır . Uzak kullanıcının kimliğini doğruladıktan sonra bu değişkeni ayarlamak web sunucusuna bağlıdır.

Mercurial olarak, kullanıcı adı karşılaştırıldıkça allow_pushve allow_readlistelerde [web]kullanıcı söz konusu depoyu itmek veya çekme / klon izin olup olmadığını belirlemek için bölüm. Bu elbette .hg\hgrcher havuzdaki dosyaları düzenleyerek havuz başına yapılandırılabilir .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.