【发布时间】:2011-05-17 08:22:10
【问题描述】:
我对 unix 系统完全陌生...玩了大约 2 周。 我已经成功安装了 subversion 并创建了一个存储库。
假设我们有用户:
internal_developer
external_developer_1
external_developer_2
我们有一个项目:
repositories/project1
repositories/project2
repositories/project3
如何独立配置每个用户和项目的访问权限。
- internal_developer - 可以访问所有项目 (rw)
- external_developer_1 - 只能访问 project1 ( rw )
- external_developer_2 - 只能访问 project2 ( rw )
当我说“只能访问”时,这意味着他看不到存储库/* 内容,只能看到他正在使用的项目。
我试图寻找一些手册或教程,我该如何做到这一点...但所有这些都是针对比我更有经验的用户...
感谢任何帮助。
---
编辑。 (还不能回答我的问题)
在文件/etc/apache2/mods-available/dav_svn.conf
AuthUserFile 的位置仅存储用户名和密码。
然后
需要添加新行:AuthzSVNAccessFile /usr/passwd/svn.authz
然后是弗洛伊德的语法^^。
我看了这里:Subversion - how do I control user access for single repository when SVNParentPath is used?
而且有了组,它看起来更像了。
不过,还剩下一个缺失的部分……当涉及到http://xxxxxx/svn/时,无法配置管理员用户查看所有存储库
报错
禁止
您无权访问此服务器上的 /svn/。
即使我放入了 svn.authz:
[/]
@internal = rw
【问题讨论】:
-
这是一个包含三个项目的存储库,还是三个独立的存储库?它在配置上有很大的不同。
-
只有一个仓库。里面有很多项目。
-
嗯...现在我开始怀疑...你所说的存储库是什么?在我添加 AuthzSVNAccessFile 之前,当我访问 HTTP/svn 时,我可以看到所有项目。每个项目都有自己的修订历史。
-
如果每个项目都有自己的修订编号,则有三个独立的 Subversion 存储库。这是一个简单的问题,在这些存储库的实际位置中,有多少个
hooks目录?每个存储库都有自己的hooks目录。如果这是三个不同的存储库,我相信每个存储库都需要自己的授权配置(尽管它们可能能够共享相同的身份验证文件)。 -
现在他们共享同一个身份验证文件......我可以为每个可以访问它的项目指定属性。
标签: svn unix configuration ubuntu-10.04