Impostazione di Mercurial con autenticazione e autorizzazione di Active Directory


19

Sto valutando le possibilità di spostare la mia organizzazione su Mercurial, tuttavia mi sto imbattendo in due requisiti di base ai quali non riesco a trovare i corretti suggerimenti.

Come posso impostare il repository centrale di Mercurial per autenticare gli utenti con Active Directory centrale e consentire loro di eseguire il push o pull solo se dispongono delle credenziali giuste?

Come posso impostare un repository di progetti Mercurial per consentire agli utenti appartenenti a un gruppo specifico di inviare / estrarre il codice sorgente? Ne abbiamo bisogno per avere l'autorizzazione per progetto.

Su quali server HTTP (IIS o Apache ecc.) Sono supportati i due requisiti precedenti?

Mi scuso se sto chiedendo qualcosa di ovvio o se mi manca qualcosa di fondamentale su come funziona l'autenticazione e l'autorizzazione.


Risposte:


6

Ho pubblicato un post in quattro parti sul blog per l'impostazione di Mercurial su IIS con autenticazione di Active Directory e utilizzo di hgwebdir.cgi per l'autorizzazione push. Si ripercuote l'intero processo di:

  • Impostazione dell'interfaccia web hg di Mercurial su IIS.
  • Impostazione dell'autenticazione IIS per Mercurial in modo che solo gli utenti autorizzati dalla directory attiva (ovvero gruppi di sicurezza / utenti) possano visualizzare / accedere ai repository tramite l'interfaccia web di hg o il file system.
  • Configurazione dell'autenticazione di Active Directory per gli utenti di Mercurial, in modo che solo gli utenti autorizzati possano vedere / accedere ai repository a cui hanno accesso.
  • Configurazione di hgwebdir.cgi tramite hgweb.config per impostare le autorizzazioni push per gli utenti specificati nei repository.
  • Nascondere hgwebdir.cgi utilizzando la riscrittura ISAPI di Helicon nell'URL del repository.
  • Personalizza lo stile / la sensazione dell'interfaccia utente web di hg secondo i tuoi gusti.

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

Spero sia utile alle persone ...


4

Puoi farlo con Apache. Controlla come limitare la spinta in Apache su:

http://mercurial.selenic.com/wiki/PublishingRepositories#pushing

Appare sopra sullo stesso file su come configurare mercurial, le sue autorizzazioni e tutti gli utenti consentiti da Apache.

Dopo aver configurato mercurial e Apache, puoi utilizzare mod_authnz_ldap per consentire l'accesso solo agli utenti di Active Directory:

http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html

Non dimenticare di controllare il paragrafo sulla configurazione di Active Directory.

Questo dovrebbe essere abbastanza per te.

Buona fortuna,
João Miguel Neves


L'uso di authnz_ldap trasmette password non crittografate tra il client e Apache. Sto cercando di scoprire come evitarlo, ma non ho molta fortuna.
LeBleu,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.