登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

herb

喜欢写博,喜欢安静,喜欢挑战!

 
 
 

日志

 
 

svn多项目全局权限设置  

2012-07-18 15:50:44|  分类: opensoft |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

创建项目
[root@SVN svn]# svnadmin create herb
[root@SVN herb]# ll
总计 24
drwxr-xr-x 2 root root 4096 07-18 15:16 conf
drwxr-sr-x 6 root root 4096 07-18 15:15 db
-r--r--r-- 1 root root    2 07-18 15:03 format
drwxr-xr-x 2 root root 4096 07-18 15:03 hooks
drwxr-xr-x 2 root root 4096 07-18 15:03 locks
-rw-r--r-- 1 root root  229 07-18 15:03 README.txt

具体配置文件在conf, conf中有3个配置文件
passwd             用于存放本svn库的用户名和密码,用 = 分割,左边是用户名,右边是密码(明文)。
authz               用于存放本svn库的访问授权信息。
SVNserve.conf  用于存放本svn库的全局访问控制信息

最重要的是authz文件,它定义了两部分的内容:
1,对组成员的定义,
2,对目录的授权定义,
可以针对一个单一用户授权,也可以针对在[groups]里面定义的一个组授权,还可以用*通配符来对所有的用户授权,
授权的选项有:只读访问('r'),读写访问('rw'),或者无权防问('').

例如在一个项目herb中,我们可以修改其3个配置文件
(1.修改全局设置)
[root@SVN conf]# vi svnserve.conf
[general]
anon-access = none ###(none:不允许匿名用户访问)
auth-access = write
password-db = passwd  (指定passwd的路径,此处在当前目录)
authz-db = authz          (指定authz的路径,此处在当前目录)
(2.修改权限设置)
方式一
直接添加用户,给予读写权限:
[herb:/]
herb = rw
方式二
建立组,组中包括herb用户,然后直接给予组授予权限
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
admin = herb
[herb:/]
@admin = rw
(3.passwd设置)
[root@SVN svnconf]# vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
herb = herb
此处就完成了herb用户对项目herb的设置,注:格式如下
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。

版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为G:\SVNRoot。这样,/就是表示对全部版本库设置权限。
herb:/,表示对版本库1设置权限
herb:/hbi, ,表示对版本库1中的hb目录设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限

那么如果是多项目的统一权限设置,则直接将项目中的authz和passwd配置指向统一地方即可
例如
现在有两个项目 herb和haibo 那么现在只需要在其项目的conf配置中修改到对应的位置
如在/etc下创建一目录svnconf 然后将其项目下的authz和passwd拷贝至其目录下
然后修改svnserve.conf 即可!
anon-access = none
##(none:不允许匿名用户访问)
auth-access = write
password-db = /etc/svnconf/passwd
authz-db = /etc/svnconf/authz
(passwd与authz的配置如上)
到此设置完成!

补充:
在svnserve.conf中进行了这样的设置:
anon-access = none
auth-access = write
如果,anon-access = read,需要在在authz文件中加上:

[/]
* = r

否则在使用SVN进行Checkout时出现错误提示:无权打开根进行编辑操作。。

 

  评论这张
 
阅读(1632)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018