Назад | Перейти на главную страницу

Ограничить доступ к WebSVN для пользователей Windows в определенном домене

Я пытаюсь установить WebSVN поверх VisualSVN. VisualSVN настроен для использования аутентификации Windows, при этом пользователи из доменов CLIENT и DEV получают доступ к разным областям сайта. Пользователям в CLIENT отказано в корневом доступе (через интерфейс SVN), и им предоставляется доступ к определенным путям в репозитории. Пользователям DEV предоставляется доступ ко всему. Это отлично работает при доступе к VisualSVN через его веб-интерфейс или через браузер репозитория TortoiseSVN.

Я могу запустить WebSVN, и он проверяет подлинность действительных учетных данных пользователя домена (из любого из доменов) перед предоставлением доступа. Однако после предоставления действительных учетных данных он предоставляет доступ ко всему и всем пользователям.

Я пробовал разные варианты настройки в VisualSVN/conf/httpd-custom.conf файл, но ни один из них не помогает решить эту проблему. В идеале WebSVN предоставит такой же доступ, что и VisualSVN. Однако я согласен полностью заблокировать всем пользователям домена КЛИЕНТА доступ к WebSVN.

Текущее состояние файла conf:

LoadModule php5_module "c:/php/php5apache2_2.dll"
LoadModule authz_user_module bin/mod_authz_user.so
LoadModule sspi_auth_module bin/mod_auth_sspi.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3 

PHPIniDir "C:/php"

<IfModule dir_module>
   DirectoryIndex index.html index.php 
</IfModule>

<Location /websvn/>  
  SVNListParentPath on
  SVNParentPath "D:/Repositories/"  

  AuthName "SVN Server"
  AuthType SSPI
  SSPIAuth On
  SSPIAuthoritative On
  SSPIDomain DEV

  require valid-user
</Location> 

(Эта настройка направлена ​​на разрешение доступа только членам домена DEV, неявно исключая домен КЛИЕНТА - однако решения для любого подхода будут приветствоваться и приняты).

Вот как я в итоге получил ограничение пользователей теми, кто находится в определенном домене:

<Location /websvn/> 
  AuthName "SVN Server"
  AuthType SSPI
  SSPIAuth On
  SSPIAuthoritative On
  SSPIDomain DEV
  SSPIOfferBasic On
  SSPIOmitDomain On

  require group DEV\Group1
  require group DEV\Group2
</Location> 

Ключевым моментом было использование require group строка, чтобы указать, какие конкретные группы в домене должны иметь доступ. В require valid-user В моей предыдущей попытке строка просто проверяла, что это действительный пользователь, но не проверяла домен пользователя.