2013-06-21 14 views
0

Есть ли способ контролировать просмотр/чтение доступа к svn с использованием авторизации на основе пути, которая основана на регулярных выражениях или подстановочных знаках?Как использовать подстановочные знаки или регулярные выражения для управления авторизацией/доступом на основе пути для svn?

Я знаю, что могу использовать svnperms для управления доступом для записи через скрипт фиксации транзакций, но мне также необходимо ограничить доступ для чтения и просмотра, и в настоящее время у меня есть корень проекта с файлами фиксации, которым всем людям нужен доступ и подкаталоги для которые должны иметь только конкретные люди. Предоставление доступа к директории проекта верхнего уровня автоматически предоставляет его всем подкаталогам. Если бы я мог создать правило регулярных выражений, я мог бы легко ограничить доступ.

Если я не могу найти способ контролировать доступ с помощью подстановочных знаков или шаблонов, которые мне нужны для реорганизации структуры каталогов, чтобы переместить файлы верхнего уровня в подкаталог, в который я могу установить разрешения.

Пожалуйста, дайте мне знать, если вы знаете как:

  • крюк сценарий, который может контролировать доступ вид
  • апачский расширение, которое может предоставить возможности AuthZ с групповыми символами или регулярных выражений шаблонов
+0

http://subversion.tigris.org/issues/show_bug.cgi?id=2662 – bahrep

ответ

1

от В июне 2013 года это невозможно сделать. Таким образом, решение проблемы заключается в реорганизации хранилища, поэтому это необязательно. Когда вещь слишком сложная, она обычно приводит к большому переосмыслению дизайна или подхода.

В настоящее время Maven структуры приводит к этому требованию: корня/pom.xml корня/project1/pom.xml корень/project2/pom.xml и т.д ..

Мы можем заменить это /корень/pom.xml /project1/pom.xml /project2/pom.xml и т.д ..

Мы можем установить Svn завивку следующим образом предоставляя всем доступ для чтения к проекту верхнего уровня и читать записи в свой проект , Если сервер сборки непрерывного интегрирования заполняет внутреннее репозиторинг maven с помощью моментального снимка корня, тогда пользователям нужно только проверить определенные проекты.

[repo:/root] 
* = r 
@releng = rw 

[repo:/project1] 
@teamOne = rw 

[repo:/project2] 
@teamTwo = rw