1

这是我的 Apache 配置文件中的条目

 <Location /svn/repo1>
DAV svn
SVNPath /var/svn/repositories/repo1
AuthType Basic
AuthName "SVNRepo"
AuthUserFile /var/httpd/passwd
Order deny,allow
Require valid-user
<Limit PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
    Require user svn
</Limit>

不确定我要做什么是否显而易见,但我想允许任何经过身份验证的用户对存储库进行只读访问,但将 POST 等限制为仅 1 个特定(经过身份验证的)用户。一直无法破解这个,希望有人以前遇到过这个吗?

提前致谢。

4

1 回答 1

1

我会反过来做:

<Location /svn>
  DAV svn
  SVNParentPath /var/svn

  # Authentication: Digest
  AuthName "Subversion repository"
  AuthType Digest
  AuthUserFile /etc/svn-auth.htdigest

  Require valid-user

  # Authorization: Authenticated users only for non-read-only
  #                (write) operations; allow anonymous reads
  <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require user svn
  </LimitExcept>
</Location>

例如建议:http ://svnbook.red-bean.com/en/1.6/svn-book.html#svn.serverconfig.httpd.authz.blanket

您使用的位置 (/svn/repo1) 表明您有多个要管理的 svn 存储库?如果是这样,我会使用 svn 的每个目录配置: http : //svnbook.red-bean.com/en/1.6/svn-book.html#svn.serverconfig.httpd.authz.perdir 如果你这样做,它可以防止 apache 服务器重新加载需要调整权限。

于 2012-02-16T12:36:39.693 回答