Apache+SVN权限管理实例剖析

之前几节中我们讲解了Apache+SVN部署问题,看了很多同学对权限管理的困惑,本文通过实例向大家讲一下Apache+SVN权限管理,自己将实际操作方案放上来,供大家参考。

首先介绍下我们的环境:我们的SVN服务器是LINUX的操作系统。

方法一
首先看一下Apache+SVN权限管理的几个例子。例子:
在服务器端192.168.2.22的/opt/repository下建test1和test2两个库,权限和用户文档统一
步骤如下:

1,建库
svnadmincreate/opt/repository/test1
svnadmincreate/opt/repository/test2

2,配置httpd
 

 
 
 
  1. <Location/opt> 
  2. DAVsvn  
  3. SVNParentPath/opt/repository/  
  4. AuthTypeBasic  
  5. AuthName"Subversionrepository"  
  6. AuthUserFile/opt/repository/passwd  
  7. AuthzSVNAccessFile/opt/repository/authz  
  8. Requirevalid-user  
  9. Location> 

解释:
用户访问test1的方式为:http://192.168.2.22/opt/test1
用户访问test2的方式为:http://192.168.2.22/opt/test2

3,则passwd为用户列表文档,authz为用户Apache+SVN权限管理文档

4,用户权限文档authz
在用户权限文档中,格式如下:

 
 
 
  1. [groups]  
  2. t1=a 
  3. t2=b,c  
  4. t3=d,e  
  5. [test1:/]  
  6. *=r  
  7. @t1=rw 
  8. [test1:/back]  
  9. @t2=rw 
  10. [test2:/]  
  11. *=r  
  12. @t2=rw 
  13. [test2:/ca]  
  14. @t3=rw 
  15. @t1=none 

解释:
对于test1库来讲:
1,a具有所有目录的读写权限
2,b,c对于back目录下的具有读写权限,对其他目录只有读权限
3,d,e对所有目录只有读权限
对于test2库来讲:
1,b,c具有所有目录的读写权限
2,d,e对于ca目录具有读写权限,对其他目录只有读权限
3,a没有ca目录的任何权限,但对其他目录有读权限

请继续关注下节Apache+SVN权限管理介绍。

 【编辑推荐】

  1. MyEclipse6.0集成SVN及配置详解
  2. CentOS系统中安装subversion并使用svn+ssh访问
  3. 基于Java的svn客户端工具JavaSVN 1.1.0.beta发布
  4. 如何结合使用Subversion和Eclipse
  5. Subversion日期解析函数缓冲区溢出漏洞

 

THE END