我想在SVN中使用LDAP和AuthzSVNAccess設置基於補丁的授權,我的初始測試只是爲了給每個人提供讀/寫訪問權限,以便檢查配置工作正常。svn鎖和AuthzSVN在基於路徑的授權問題
我有我的Apache的conf爲:
<Location /svn/>
AuthName "Login with LDAP"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative on
AuthLDAPURL ldap://XXX.com:389/ou=XXX,dc=XXX,dc=XXX,dc=XXX?uid
SVNParentPath /var/www/svn
AuthzSVNAccessFile /var/www/svn/authorization.access
Satisfy Any
require valid-user
</Location>
我直接在/ var/WWW/SVN住各種SVN倉庫。
而且authorization.access看起來是這樣的:
[/]
* = rw
這肯定是發生作用,如果我將其更改爲* = r
那麼我可以不再犯,所以我很高興,Apache是使用文件。
不過,雖然我可以檢出,提交回購瀏覽,更新我再也svn lock
任何文件,我得到的錯誤:
Error: Server sent unexpected return value (401 Authorization Required) in response to LOCK request for '/svn/MyRepo/MyFile.txt'.
是否有任何人知道是否需要有額外的配置svn lock
和AuthzSVN?除了我可能需要的rw
之外是否還有其他許可?或者可能在我當前的配置中出現錯誤。
謝謝,邁克。
我沒有DAV指令,一切工作正常。我假設因爲LDAP配置。 雖然滿足任何提示是絕對現貨,並已解決我的問題。謝謝。 我們目前僅支持SVN 1.6,並且在不久的將來,桌面上的升級會有所提升,感謝您的建議。 – mleonard87
在你設置Subversion的Location塊中應該總是有一個「DAV SVN」指令,以便作出響應。它與認證無關。它告訴mod_dav它應該使用哪個提供者。沒有它,默認是mod_dav_fs,但是你需要mod_dav_svn來讓Subversion正常工作。你可能在你的配置中有其他地方,但如果你試圖在服務器上使用其他路徑,可能會導致問題,因爲mod_dav會嘗試提供服務。 –