通过 Windows 域登录验证 SVN 用户

rlb*_*ond 2 active-directory svn svnserve apache-2.2

我刚刚为我大学的实验室设置了一个 SVN 服务器(在 Windows XP 机器上)。现在,任何人都可以匿名访问和提交到存储库。

我想只允许我们 AD 域上的某些用户访问存储库。如果可能,我还希望密码与域的密码相同。

这是可能的吗?

解决了

我安装了 mod_auth_sspi 并使用以下内容配置了我的 httpd.conf:

DAV svn SVNPath "R:\SVN"

AuthName "SVN Server"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIDomain AD
SSPIOfferBasic On
Require valid-user

AuthzSVNAccessFile "r:/svn/svnaccess.conf"
Run Code Online (Sandbox Code Playgroud)

并在 svnaccess.conf 中:

[groups]
dev = AD\user1, user1, AD\user2, user2

[/]
@dev = rw
Run Code Online (Sandbox Code Playgroud)

pal*_*rse 6

如果您使用的是 Apache,是的。确保安装了 mod_auth_sspi。然后使用适当的设置配置目录:

<Directory />
    Options FollowSymLinks
    AllowOverride None

    AuthType SSPI
    AuthName "YOURDOMAIN"
    SSPIAuth On
    SSPIAuthoritative Off
    SSPIDomain dc.yourdomain.com
    SSPIOmitDomain Off
    SSPIOfferBasic On
    SSPIUsernameCase lower
    Require group "YOURDOMAIN\AuthorizedGroup" 
</Directory>
Run Code Online (Sandbox Code Playgroud)

在您的 svnpasswd 文件中,您只需指定具有完整域名的用户

developers = mydomain\myuser
[/]
@developers = rw
Run Code Online (Sandbox Code Playgroud)

我希望这会有所帮助。