Svn
使用 LDAP 和 Active Directory 進行 SVN 身份驗證
我在讓 SVN 身份驗證與 LDAP / Active Directory 一起使用時遇到了一些問題。我的 SVN 安裝工作正常,但是在我的 apache vhost 中啟用 LDAP 後,我無法讓我的使用者進行身份驗證。
我可以使用一系列 LDAP 瀏覽器成功連接到 Active Directory,但似乎無法正常工作。
- SVN 設置在 /var/local/svn
- 伺服器是 svn.domain.local
- 對於測試,我的儲存庫是 /var/local/svn/test
我的虛擬主機文件如下:
<VirtualHost *:80> ServerAdmin alex@domain.com ServerAlias svn.domain.local ServerName svn.domain.local DocumentRoot /var/www/svn/ <Location /test> DAV svn #SVNListParentPath On SVNPath /var/local/svn/test AuthzSVNAccessFile /var/local/svn/svnaccess AuthzLDAPAuthoritative off AuthType Basic AuthName "SVN Server" AuthBasicProvider ldap AuthLDAPBindDN "CN=adminuser,OU=SBSAdmin Users,OU=Users,OU=MyBusiness,DC=domain,DC=local" AuthLDAPBindPassword "admin password" AuthLDAPURL "ldap://192.168.1.6:389/OU=SBSUsers,OU=Users,OU=MyBusiness,DC=domain,DC=local?sAMAccountName?sub?(objectClass=*)" Require valid-user </Location> CustomLog /var/log/apache2/svn/access.log combined ErrorLog /var/log/apache2/svn/error.log </VirtualHost>
在我的 error.log 中,我似乎沒有收到任何綁定錯誤(我應該在別處尋找嗎?),但只有以下內容:
[Thu Jun 21 09:51:38 2012] [error] [client 192.168.1.142] user alex: authentication failure for "/test/": Password Mismatch, referer: http://svn.domain.local/test/
在“AuthLDAPURL”的結尾,我看到有人使用 TLS 和 NONE,但在我的情況下似乎都沒有幫助。
我已經載入了 ldap 模組並且已經檢查了我所知道的,所以任何幫助都是非常受歡迎的。謝謝
REFERRALS off
在伺服器中設置/etc/ldap/ldap.conf
並重試。並嘗試將“NONE”添加到 URL 行:
AuthLDAPURL "ldap://192.168.1.6:389/OU=SBSUsers,OU=Users,OU=MyBusiness,DC=domain,DC=local?sAMAccountName?sub?(objectClass=*)" NONE
試試 ldapsearch。在您
.ldaprc
的主目錄中執行以下操作:HOST 192.168.1.6 BASE DC=domain,DC=local BINDDN CN=adminuser,OU=SBSAdmin Users,OU=Users,OU=MyBusiness,DC=domain,DC=local
用它:
ldapsearch -D "CN=adminuser,OU=SBSAdmin Users,OU=Users,OU=MyBusiness,DC=domain,DC=local" -W sAMAccountName=user
它將詢問 BindDN 密碼。