设为首页 收藏本站
查看: 611|回复: 0

[经验分享] Subversion 基于 Apache 使用时用户权限的管理

[复制链接]

尚未签到

发表于 2017-1-8 12:12:54 | 显示全部楼层 |阅读模式
Subversion 基于 Apache 使用时用户权限的管理
关键词: Subversion    版本管理    源代码管理                                          

Subversion 项目和用户权限配置指南:

一、Subversion 的两种使用方式:
    1、Apache 站点方式;
    2、本地命令行方式。
    当然,我们也可以通过客户端来进行访问,但那也必须先建立上述
两种访问接口。


二、Apache 方式的配置
    第一种方式我们需要安装 Apache 服务器程序,同时需要安装两个模

块:
    mod_dav_svn   以及   mod_authz_svn
    他们可以在 Subversion 的站点上找到,请在附录中查找链接。
    将所有需要的模块安装之后,我们必须编辑 Apache 的配置文档,让

其将我们要用的模块装载。一般来说,Apache 的配置文件是 httpd.conf

。位置一般在 Apache 安装目录下的 conf 子目录中。而模块我们一般放

在 modules 子目录中。我们在配置文件 httpd.conf 中加入:
    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.so
    这样,Apache 就可以访问 Subversion 的仓库了。

三、Apache 方式中项目的发布
    首先还是要先建立 Subversion 的项目,例如:
    svnadmin create /home/svn/projectA
    之后,在 httpd.conf 文件中加入:
   
       DAV svn
       SVNPath /home/svn/projectA
   
    如果是想建立多个项目的话,可以使用另一种写法:
   
       DAV svn
       SVNParentPath /home/svn
   
    这样,凡是在 /home/svn 目录下的子目录, Apache 都交给 Subversion

DAV 去处理。用户即可以通过浏览器或者URL访问 Subversion 管理的项

目了。

四、Apache 方式下的权限管理
    首先,我们来创建一个用户 robert。
    由于是第一次创建用户,我们必须同时创建一个用户口令文件:
    htpasswd -c authfile robert
    这时,会提示输入用户密码以及确认用户密码。htpasswd 程序会将

用户密码进行散列运算后保存在 authfile 中。创建第二个用户时,我们

就不必输入 -c 开关了。
    htpasswd authfile harry

    如果想要删除某个用户,我们可以使用下列指令:
    htpasswd -D authfile harry
    这样,harry 就被从 authfile 中删除了。

    这时,Subversion 的权限管理问题就转化为了 Apache 的权限管理问

题了。我们将前述的目录配置做一下修改:
   
       DAV svn
       SVNPath /home/svn/projectA
       AuthType Basic
       AuthName "Subversion projectA"
       AuthUserFile /home/svn/projectA/authfile
       Require valid-user
   
    这样,对 projectA 访问就必须提供 authfile 中记录的用户和正确密码

才可以进行了。

五、Apache 方式下的分组管理
    有时,我们希望能够将多个开发人员编为一组,使用组的方式来为

项目设定权限。比如 projectA 项目只有属于 groupA 的成员才可以存取

。下面我们来介绍其配置方法。
    这里,我们就要用到 mod_authz_svn 提供的功能了。我们对

httpd.conf 中的目录配置再做一次修改:
   
       DAV svn
       SVNParentPath /home/svn/
       AuthzSVNAccessFile /home/svn/authz.conf
       AuthType Basic
       AuthName "Subversion projectA"
       AuthUserFile /home/svn/projectA/authfile
       Require valid-user
   
    大家可以注意到,这里使用了另一个配置文件:authz.conf
    他的大致结构如下:
    [groups]
    everyone = robert, tommy, songjy, zhengyong, orcus, zhangq
    groupA = robert, zhangq
    groupB = orcus, tommy
    [projectA:/]
    @groupA = rw
    @everyone = r
    [projectB:/]
    @everyone = r
    @groupB = rw
    Ok, 我想大家应该已经明白了基于组和项目的管理方法了。:)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-325540-1-1.html 上篇帖子: svn1.6+apache2.2+ssl配置之Apache集成 下篇帖子: Apache服务器中的URL重写的配置和应用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表