我正在使用authz文件来限制对subversion服务器(svnserve)的访问。我想授予用户对存储库中特定项目的读写访问权限,但不能访问同一存储库中的其他项目。我的authz文件如下所示:
[groups]
trusted = userA,userB,userC
[/]
@trusted = rw
* =
[repo1:/project1]
userD = rw
但是使用此authz文件,userD只能读取,但不能写到/ project1。
如果我添加以下内容:
[repo1:/]
userD = r
然后userD可以读取和写入/ project1。
这对我没有任何意义。根据{{3}},“最具体的路径始终匹配”,因此不需要这样做。此外,我无法理解设置读取权限实际上是让用户写到项目中。
有人可以帮忙吗?
答案 0 :(得分:1)
这似乎与1.5以下版本中提到的here类似或相同的错误。我强烈建议将您的存储库和SVN版本升级到1.6。这可能是一种痛苦,因为你必须转储并加载整个仓库。有关迁移存储库here的良好指南。如果您的仓库很小,那么流程的时间不会太长(我在公司环境中做过)。
另一种方法是使用apache作为SVN服务器主机。
修改强>
在浏览SVN更改日志后,我在1.4.3 Changes中找到了这个:
修复:authz需要读访问权限 写入的根(问题#2486)
这听起来像是你的问题。所以据说它应该在版本1.4.3之后修复。