Subversion权限文件AuthzSVNAccessFile示例

 在使用Subversion时,认证文件AuthzSVNAccessFile能控制每一个目录的权限,但讲解的文档较少,中文文档更少。下面通过实例讲解使用方法。

环境Windows 2003 Server,局域网,域:domain.com.cn

Apache 2.0.52

Subversion 1.1.0

TortoiseSVN 1.1.0

LanguagePack_ 1.1.0 _zh_CN

 

 

例子:

Repository存放在D:/repository下,有两个repository: test and xtest

每个repostory 的结构相同:

       根:01.txt

              02.txt

       folder 1-: 11.txt

       12.txt

folder 2-: 21.txt

   22.txt

对目录12作不同的读写权限控制

Basic Authentication

修改文件:

Httpd.conf:

#Basic authentication

<Location /repository>

              DAV svn

              SVNParentPath d:/repository

              AuthzSVNAccessFile d:/repository/accessfile                

              Require valid-user

              AuthType Basic

              AuthName "身份验证"

              AuthUserFile d:/repository/passwd                 

</Location>


Apachehtpasswd生成用户名和密码,

Htpasswd –c passwd username

第二次不用 –c

生成的用户名和密码在passwd中:

0:$apr1$Vu5.....$XZ/csz/2YKoPNKpb88O5p0

1:$apr1$vu5.....$I1VwMJ7JtRmpmJjVUlT4h1

2:$apr1$Dv5.....$vf2MTg/p0mY.WcFhx7wET1

3:$apr1$Tv5.....$gfk4AiP49h0JjKN8BuJdB.

 

AuthzSVNAccessFile控制每个目录的读写权限

[test:/]

1 = r

2 = r

3 = r

[test:/1]

1 = rw

[test:/2]

2 = rw

 

在客户端,用http://server/repository/test可以访问。也可以直接进入子目录访问:http://server/repository/test/1http://server/repository/test/2。系统会要求进行认证。例如用户1对目录1有读写权限,可以commit修改,但对目录2所作的修改就不能commit

 

SSPI认证。

按上一种方式,用户更换一次密码,就必须修改一次密码文件。用SSPI认证则可以没有这个问题。

Httpd.conf文件:

#SSPI authentication

<Location /repository>

              DAV svn

              SVNParentPath d:/repository

              AuthzSVNAccessFile d:/repository/accessfilesspi               

              Require valid-user

              AuthType SSPI

           AuthName "Subversion repositories"

               # SSPI settings

               SSPIAuth On

               SSPIAuthoritative On

               # point to domaincontroller

               SSPIDomain domain.com.cn

              SSPIOfferBasic On

</Location>

控制文件AuthzSVNAccessFile要作相应的修改:

[test:/]

domain/user1 = r

domain/administrator = r

[test:/1]

domain/user1 = rw

[test:/2]

domain/user1 =

domain/administrator = rw

tortoiseSVN使用时,会提示认证,填写用户名和密码即可。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值