使用 Active Directory 进行 SVN 身份验证

使用 Active Directory 进行 SVN 身份验证

是否可以使用 Active Directory(Server 2008 R2)来管理托管在 Debian(Wheezy)上的 Subversion repo 的用户?

我尝试将 Debian 服务器上托管在 Apache 上的 SVN 链接到 Windows 服务器上的 Active Directory。我能够签出存储库,但是当我提交更改时,我收到提交失败授权失败(在 Windows 客户端上使用 tortoisesvn,提交时它甚至从不要求提供凭据)

我正在使用 apache2 | 2.2.22-13+deb7u1

dav_svn.conf 如下:

<Location /svn>
DAV svn
SVNParentPath /srv/repos/svn
SVNListParentPath on
AuthName "helloworld"
AuthType basic
AuthzLDAPAuthoritative off
AuthBasicProvider ldap
AuthLDAPURL ldap://192.168.1.10/dc=example,dc=com?sAMAccountName" NONE
AuthLDAPBindDN "CN=subversion,OU=Users,DC=example,DC=com"
AuthLDAPBindPassword "secret"
Require ldap-group CN=svn,OU=groups,dc=example,dc=com
</Location>

答案1

你的配置是非常糟糕(我可以看到很少正确的字符串)。使用来自的配置这里作为一个很好的起点(只是Require valid-user从我的角度来看它错了)

答案2

我需要在 AuthLDAPURL 中指定全局目录端口。我使用以下配置使其工作:

<Location /svn>
    DAV svn
    AuthType basic
    SVNParentPath /srv/repos/svn
    AuthName "helloworld"
    AuthBasicProvider ldap
    AuthLDAPURL "ldap://192.168.1.10:3268/dc=example,dc=com?sAMAccountName" NONE
    AuthLDAPBindDN "CN=subversion,CN=users,DC=example,DC=com"
    AuthLDAPBindPassword "secret"
    Require ldap-group CN=svn,OU=groups,DC=example,DC=com
</Location>

相关内容