Как позволить немедленному пользователю в файле svn authz?
-
02-10-2019 - |
Вопрос
У меня есть сервер 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
Подрывность
[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>
Подрывность
[Software:/]
@soft = rw
* = r # <-- This is the added line
Например, прежде чем добавить авторизацию от конкретного IP, все пользователи были аутентифицированы, и, таким образом, имели имя. Теперь некоторые доступны без имени пользователя! Я нашел -
Имя пользователя в файлах журнала Apache, но линия - = r
не работает, ни один anonymous = r
. Отказ Я хотел бы не допускать доступа к чтению всем в разрешении SVN. Как я могу это сделать?
Решение
Попробуйте положить это в ваш файл AUTHZ:
[Software:/]
@soft = rw
$anonymous=r