如何在svn authz文件中允许unamed用户?

时间:2010-04-28 08:59:11

标签: authentication authorization anonymous apache-config svn-config

我有一个运行apache的subversion服务器。它在apache配置中使用LDAP对用户进行身份验证,并使用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

的Subversion

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

从一台计算机添加匿名访问

现在,我有一个我想要设置的服务(rietveld,用于代码审查),需要匿名访问存储库。由于这是一项Web服务,因此始终从同一服务器进行访问。因此,我添加了apache配置以允许来自此计算机的所有访问。直到我在授权文件中添加一行以允许对所有用户进行读访问之后,这才起作用。

的Apache

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

的Subversion

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

例如,在我从特定IP添加授权之前,所有用户都经过身份验证,因此具有名称。现在,一些访问是在没有用户名的情况下完成的!我在apache日志文件中找到了-用户名,但行- = r不起作用,anonymous = r也没有。我不想允许对SVN授权中的每个人进行读访问。我怎么能这样做?

1 个答案:

答案 0 :(得分:3)

尝试将其放入您的authz文件中:

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