SVN基于路径的身份验证问题

时间:2011-04-26 18:34:37

标签: svn

我正在使用authz文件来限制对subversion服务器(svnserve)的访问。我想授予用户对存储库中特定项目的读写访问权限,但不能访问同一存储库中的其他项目。我的authz文件如下所示:

[groups]
trusted = userA,userB,userC

[/]
@trusted = rw
* =

[repo1:/project1]
userD = rw

但是使用此authz文件,userD只能读取,但不能到/ project1。

如果我添加以下内容:

[repo1:/]
userD = r

然后userD可以读取和写入/ project1。

这对我没有任何意义。根据{{​​3}},“最具体的路径始终匹配”,因此不需要这样做。此外,我无法理解设置读取权限实际上是让用户到项目中。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

这似乎与1.5以下版本中提到的here类似或相同的错误。我强烈建议将您的存储库和SVN版本升级到1.6。这可能是一种痛苦,因为你必须转储并加载整个仓库。有关迁移存储库here的良好指南。如果您的仓库很小,那么流程的时间不会太长(我在公司环境中做过)。

另一种方法是使用apache作为SVN服务器主机。

修改

在浏览SVN更改日志后,我在1.4.3 Changes中找到了这个:

  

修复:authz需要读访问权限   写入的根(问题#2486)

这听起来像是你的问题。所以据说它应该在版本1.4.3之后修复。