답변:
Windows, Unix에서 작동하고 AD / LDAP로 인증 할 수있는 일부 통합 시스템을 찾고 있다면 RhodeCode http://rhodecode.com을 사용해보십시오 . 리포지토리를 제공하는 bitbucket / github의 로컬 인스턴스입니다. 권한 시스템과 쉬운 사용자 관리, 코드 검토 등이 제공됩니다.
몇 달 전에 4 부로 구성된 블로그 게시물을 작성하여 Active Directory / IIS를 사용하여 Mercurial의 웹 서버를 호스팅 할 수 있습니다. 그것은 치료를합니다 :
http://www.endswithsaurus.com/2010/05/setting-up-and-configuring-mercurial-in.html
그것은 당신을 안내합니다 :
Ben은 이미 AD를 사용하여 IIS에서 Mercurial을 설정하기위한 유용한 안내서를 제공했습니다.
추가해야 할 것은 Mercurial의 내장 (Fast) CGI 스크립트가 사용자를 인증하지 않는다는 것 입니다. 우리가 제공하는 CGI 스크립트는 인증을 위해 프론트 엔드 웹 서버에 의존합니다. 따라서 스크립트를 호출 하기 전에 인증을 수행하려면 Apache, IIS, nginx, ...를 설정해야합니다 . (그러나 LDAP를 지원하는 Bitbucket 유사 시스템을 AD에 연결할 수있는 경우 우수한 RhodeCode 를 사용할 수 있습니다.)
이러한 우려의 분리는 Mercurial을 매우 유연하게 만듭니다. Active Directory 인증을 원하는 경우 웹 서버의 표준 플러그인을 사용하면됩니다. 많은 사이트에 이미이 설정이 포함되어 있으므로 Mercurial은 "작동"합니다.
따라서 Mercurial은 인증 부분 인 암호를 확인하지 않습니다. 그러나 권한 부여 를 수행 할 수 있으므로 사용자가 밀거나 당기는 등을 허용하거나 금지 할 수 있습니다. 이는 표준 REMOTE_USER
CGI 변수에 저장된 사용자 이름을 기반으로 수행됩니다 . 원격 사용자를 인증 한 후이 변수를 설정하는 것은 웹 서버에 달려 있습니다.
Mercurial에서 사용자 이름이 섹션 의 allow_push
및 allow_read
목록 과 일치 [web]
하여 사용자가 문제의 저장소를 푸시 또는 풀 / 복제 할 수 있는지 판별합니다. 물론 .hg\hgrc
각 리포지토리 에서 파일 을 편집하여 리포지토리별로 구성 할 수 있습니다 .