在技术面转向Linux的情况下,撰写本文纯粹为了记录以前做过的一些配置~


闲话少说,直入正题:

一、所需软件(windows平台):

1.Apache     (2.0.x)
2.Subversion (1.4.x)
3.mod_auth_sspi.so (Apache认证模块,需与apache版本匹配)



二、配置步骤

1.安装Apache
2.把mod_auth_sspi.so复制到Apache的modules目录中
3.把subversion的windows安装包中的以下文件
    mod_authz_svn.so    ->apache\modules
    mod_dav_svn.so      ->apache\modules
    intl3_svn.dll       ->apache\bin
    libdb44.dll         ->apache\bin
    libeay32.dll        ->apache\bin
    ssleay32.dll        ->apache\bin
4.修改配置文件httpd.conf,增加内容
    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.so
    LoadModule sspi_auth_module modules/mod_auth_sspi.so
5.用svnadmin创建仓库: MySVNRepo
6.修改配置文件httpd.conf,增加内容
<Location /svn/mysvnrepo>
   DAV svn
   #SVNParentPath C:/svn
   SVNPath C:/svn/MySVNRepo
   SSLRequireSSL   #强制要求SSL访问
   AuthType SSPI
   AuthName "资源验证名(随便修改)"
   Require group DomainName\GroupName
   Require group DomainName\GroupName
   SSPIAuth On
   SSPIAuthoritative On
   SSPIDomain DomainName
   SSPIOfferBasic On
   AuthzSVNAccessFile C:/svn/MySVNRepo_AccessFile
</Location>
7.创建AccessFile(见上面),内容模板如下:
[/]
* =
DomanName\User1Name = rw
DomanName\User2Name = r

[/Path1]
* =
DomanName\User2Name = r

  
8.重启apache服务器


三、使用
1.通过活动目录中的域用户帐号进行认证,密码修改参加Windows域相关要求
2.通过修改AccessFile来控制仓库路径的访问权限