Как разрешить неиспользованный пользователь в файле SVN Authz? - PullRequest
1 голос
/ 28 апреля 2010

У меня есть сервер Subversion, работающий с Apache. Он аутентифицирует пользователей, использующих LDAP в конфигурации Apache, и использует полномочия SVN для ограничения доступа пользователей к определенным репозиториям. Это отлично работает.

Apache

DAV svn
SVNParentPath /srv/svn
SVNListParentPath Off
SVNPathAuthz Off
AuthType Basic
AuthName "Subversion Repository"
AuthBasicProvider ldap
AuthLDAPBindDN        # private stuff
AuthLDAPBindPassword  # private stuff
AuthLDAPURL           # private stuff
Require valid-user
AuthzSVNAccessFile /etc/apache2/dav_svn.authz

* 1006 Subversion *

[groups]
soft = me, and, all, other, developpers

Добавление анонимного доступа с одного компьютера

Теперь у меня есть служба, которую я хочу настроить (rietveld, для проверки кода), которая должна иметь анонимный доступ к хранилищу. Поскольку это веб-сервис, доступ всегда осуществляется с одного и того же сервера. Таким образом, я добавил конфигурацию apache, чтобы разрешить все доступы с этой машины. Это не работало, пока я не добавил дополнительную строку в файл авторизации, чтобы разрешить доступ на чтение всем пользователям.

Apache

<Limit GET PROPFIND OPTIONS REPORT>
  Order allow,deny
  Allow from # private IP address
  Satisfy Any
</Limit>

1018 * Subversion *

[Software:/]
@soft = rw
* = r                    # <-- This is the added line

Например, перед тем, как добавить авторизацию с определенного IP-адреса, все пользователи прошли аутентификацию и, таким образом, получили имя. Теперь некоторые обращения осуществляются без имени пользователя! Я нашел имя пользователя - в файлах журнала apache, но строка - = r не работает, как и anonymous = r. Я не хотел бы разрешать доступ на чтение всем, кто авторизован в SVN. Как я могу это сделать?

1 Ответ

3 голосов
/ 29 апреля 2010

Попробуйте добавить это в ваш файл authz: ​​

[Software:/]
@soft = rw
$anonymous=r
...