Предоставление доступа к определенному каталогу в репозитории SVN?

#svn #tortoisesvn #repository

#svn #tortoisesvn #репозиторий

Вопрос:

Я хочу предоставить пользователю доступ только к определенному каталогу (включая его подкаталоги) в моем репозитории SVN, а не ко всему репозиторию, возможно ли это?

Ответ №1:

Если вы используете apache или svnserve, вы можете установить управление доступом на основе пути

С apache, который вы устанавливаете AuthzSVNAccessFile для указания на файл, в котором перечислены правила доступа, которые вы хотите применить, ваша конфигурация apache в конечном итоге выглядит так:

 <Location /repos>
  DAV svn
  SVNParentPath /mnt/storage/svn

  AuthzSVNAccessFile /etc/apache2/svn-accessfile

  Require valid-user  
  AuthType Basic
  AuthName "Subversion repository"
  AuthUserFile /etc/apache2/users.conf
</Location>
  

Обычно они выглядят примерно так:

 [calc:/branches/calc/bug-142]
harry = rw
sally = r
  

Комментарии:

1. О чем externals ? Если целевой путь ведет через некоторые другие исходные папки externals , понадобятся ли нам отдельные разрешения и для этих внешних папок?

2. @Danijel — внешние — это отдельные репозитории со своими собственными средствами аутентификации и контроля доступа. Вам также нужно будет настроить что-то с ними, нет волшебного способа передать его.

3. В этой строке: «calc:/branches/calc/bug-142», /ветви начинаются с системного (/) пути? Спасибо.

4. @fck это не путь к файлу, это путь к репозиторию, где / является вершиной репозитория.

Ответ №2:

Да, если вы используете метод доступа http. Смотрите книгу svn: http://svnbook.red-bean.com/en/1.6/svn.serverconfig.httpd.html#svn.serverconfig.httpd.authz.perdir

Ответ №3:

Я использую USVN, но есть много других веб-интерфейсов, которые работают с apache для предоставления протоколов аутентификации SVN и разрешений репозиториев / каталогов.

Я знаю, что USVN предоставляет мелкозернистые разрешения на основе каталогов для чтения и ЗАПИСИ и использует MySQL в качестве поставщика учетных записей для аутентификации.