Svn ограничить конкретный репозиторий папок

Может ли кто-нибудь помочь мне с этой путаницей… Я правильно настроил сервер SVN. Моя проблема с авторизацией и доступом.

Я создал пользователей SVN через командную строку, используя следующую команду

htpasswd -cm / etc / svn-auth-users Гарри и мой файл dav_svn.conf имеет следующее:

<Location /svn>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /etc/svn-auth-users
Require valid-user
</Location>

Очевидно, что пользователь и пароль (в зашифрованном виде) хранятся в / etc / svn-auth-users

Вопрос 1. Тогда каково использование файлов «authz» и «passwd» внутри моего репо / conf / Вопрос 2. В моей ситуации, как указано выше (т. Е. При использовании файла / etc / svn-auth-users), как ограничить пользователей определенной веткой.

Примечание. Я вижу, что везде доступ пользователей ограничен с помощью файла «authz».

.
.
.
[my_repo:/branches/calc]
harry = rw
bobby = r
.
.
.

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


252
1

Ответ:

Я не вижу AuthzSVNAccessFile в прикрепленном вами снимке apache. Вам необходимо указать расположение файла authz в конфигурации apache AuthzSVNAccessFile.

У вас не хватает одной строчки

<Location /svn>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /etc/svn-auth-users
AuthzSVNAccessFile /etc/path/authz
Require valid-user
</Location>