通常,对于subversion只需要控制用户登录访问权限,也就是说,需要用户登录才能访问,而不是开放的Subversion服务。
那么在配置的时候,需要加上
AuthType Basic
AuthName "reposity access username and password"
AuthUserFile /etc/subversion/passwd
[1]添加用户
# htpasswd /etc/subversion/passwd test
[2]修改用户密码
# htpasswd /etc/subversion/passwd test
有的时候我们需要对用户的访问权限进行细化,不同的用户或者不同组的用户有不同的访问权限。
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
这个授权文件是用来控制subversion的目录访问权限的。目录的路径可以自己指定。
具体的方法与你的配置有关,
[3]单Repository的话
上面的配置是
SVNPath /svn/SVN_REPOS/myrepos
你的权限配置文件如下:
关于组配置,省略。
上面的配置的权限如下:
这里面的权限有继承关系。所以,对于子目录的权限,可以通过上面的方法来进行重新定义。
[4]多Repositiory
配置为
SVNParentPath /svn/SVN_REPOS
对应权限如下:
SubVersion的权限控制大致可以通过上面的方法来实现。
那么在配置的时候,需要加上
AuthType Basic
AuthName "reposity access username and password"
AuthUserFile /etc/subversion/passwd
[1]添加用户
# htpasswd /etc/subversion/passwd test
[2]修改用户密码
# htpasswd /etc/subversion/passwd test
有的时候我们需要对用户的访问权限进行细化,不同的用户或者不同组的用户有不同的访问权限。
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
这个授权文件是用来控制subversion的目录访问权限的。目录的路径可以自己指定。
具体的方法与你的配置有关,
[3]单Repository的话
上面的配置是
SVNPath /svn/SVN_REPOS/myrepos
你的权限配置文件如下:
[groups]
[/]
* = rw
[/wp]
* =
zz = rw
[/]
* = rw
[/wp]
* =
zz = rw
关于组配置,省略。
上面的配置的权限如下:
目录 | 所有用户 | zz |
/ | rw | rw |
/wp | 无权限 | rw |
这里面的权限有继承关系。所以,对于子目录的权限,可以通过上面的方法来进行重新定义。
[4]多Repositiory
配置为
SVNParentPath /svn/SVN_REPOS
[groups]
dev = tt,yy
[myproject:/]
* = rw
[myproject:/wp]
* =
zz = rw
[team:/]
* = rw
[team:/ims]
*=
zz = r
@dev = rw
dev = tt,yy
[myproject:/]
* = rw
[myproject:/wp]
* =
zz = rw
[team:/]
* = rw
[team:/ims]
*=
zz = r
@dev = rw
对应权限如下:
Repository | 项目目录 | 用户 | 权限 | |
myproject | * | * | rw | |
myproject | /wp | * | 无权限 | |
myproject | /wp | zz | rw | |
team | * | * | rw | |
team | /ims | * | 无权限 | |
team | /ims | zz | r | |
team | /ims | @dev(表示组) | rw |
SubVersion的权限控制大致可以通过上面的方法来实现。