2010-07-29 5 views
1

저는 선택된 사람들이 커밋 권한을 가진 중앙 repo 서버로 실행되는 Windows 도메인의 Windows 상자에서 Apache 2.2.15의 Mercurial 1.6을 사용하고 있습니다.Mercurial, Apache, Windows, mod_auth_sspi and hg push

나는 sspi_auth_module을 통해 사용자를 선택하기 위해 Apache의/cgi-bin /에 대한 액세스를 제한하여 Mercurial에 대한 액세스를 제한하려고합니다.

sspi_auth_module을 사용하여 repo 페이지를 탐색하면/cgi-bin에 대한 제한이 적용됩니다. 사용자 이름과 비밀번호를 입력하라는 메시지가 나타나고 모든 것이 정상적으로 작동합니다.

abort: authorization failed 

내가 제거하는 경우 : 내가 명령 줄에서 서버에 내 로컬의 repo에서 커밋하기 위해 CLI "HG 푸시"를 사용하려고하면

이 명령은 메시지와 함께 매우 빠르게 종료/cgi-bin/restrictions, pushing works.

을 httpd.conf의 관련 섹션 : (이름이 편집 됨)

<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin"> 
AllowOverride None 
Options None 
Order allow,deny 
Allow from all 
AuthName "XXXXXX" 
AuthType SSPI 
SSPIAuth On 
SSPIAuthoritative On 
SSPIOmitDomain On 
Require user "xxxxxx" 
</Directory> 

내 hgweb.config 파일의 관련 섹션 (C에 저장 저장소 :/수은) 나 '

[collections] 
C:/Hg = C:/Hg 

[web] 
allow_push = * 
push_ssl = false 
allow_archive = bz2 gz zip 

d는 도메인 컨트롤러가 인증에 대해 걱정할 수있게하고 싶습니다. (나에게 모든 사람이 여분의 암호를 외우는 것보다 낫습니다!) - 이것이 가능한 접근 방법입니까?

답변

1

해결책을 찾았습니다. 내가

어쨌든 문제의 부분 (뜨아 ... AuthName 지정을 위해 그것을 착각) 내가 SSPIDomain 지정하지 않았다 것을 의심 트릭을 httpd.conf에서했던 다음 (ScriptAlias ​​지시어는에서 있었다 시작, BTW)

사용자를 필수 사용자로 삭제했으며 사용자 이름과 암호를 묻는 메시지가 나타나고 인증 할 수 없었습니다. 나는 다시 자신을 추가하고 OK를 인증 할 수있었습니다.

감사합니다.

관련 문제