【发布时间】:2010-12-04 13:09:28
【问题描述】:
我是 SVN 新手,正在尝试为 SVN 上的多个项目配置访问控制。我想使用一个密码文件和一个身份验证文件对所有项目进行访问控制。但是,它不起作用。下面是我的配置。 我的目录结构:
/srv
|--svn
|--repos
|-- conf
|-- passwd
|-- authz
|-- projectX
|-- projectY
|-- projectZ
projectX 的 projectX/conf/svnserve.conf 条目:
[general]
anon-access = none
auth-access = write
password-db = /srv/svn/repos/conf/passwd
authz-db = /srv/svn/repos/conf/authz
realm = Project Repository
projectY 和 projectZ 使用相同的配置。 /srv/svn/repos/conf/passwd 的条目:
[users]
user1 = password
user2 = password
user3 = password
/srv/svn/repos/conf/authz 的条目:
[/]
* =
user1 = rw
[projectX:/]
user2 = rw
user3 = r
[projectY:/]
user3 = rw
user2 = r
[projectZ:/]
user2 = r
user3 = r
因此,user2 应该对 projectX 具有读写访问权限,而 user3 应该对 projectX 具有只读访问权限。但是,只有 user1 可以访问所有这些存储库。 user2 和 user3 永远不能访问任何存储库。每次它给出错误信息:提交失败(授权失败!) 谁能帮我找出我的错误? 我在服务器上使用 1.6.5 版本的 Subversion,在客户端使用 1.6.4。
【问题讨论】:
-
这与我使用的是 svnserve 而不是 Apache 有什么关系吗? svnserve 是否允许对多个存储库使用单个 authz 文件?我已经为每个存储库尝试了单个 passwd 文件和单独的 authz 文件,并且它有效!我在 SVN 红皮书中找不到任何说 svnserve 不允许单个 authz 文件的内容。
标签: svn