Можно ли использовать Active Directory (Server 2008 R2) для управления пользователями репозитория Subversion, размещенного на Debian (Wheezy)?
Я попытался связать SVN, размещенный на Apache на сервере Debian, с Active Directory на сервере Windows. Я могу проверить репозиторий, однако, когда я пытаюсь зафиксировать свои изменения, я получаю сообщение об ошибке commit failed authorization failed (используя tortoisesvn на клиенте Windows, он даже не запрашивает учетные данные при фиксации)
Я использую 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>