2010-06-04 60 views
0

我正在啓動一個小型的開源項目,並且已經有一個存儲庫和Trac實例在運行。我安裝了AccountManager插件,並且我有RegistrationModule,因爲我希望用戶能夠在沒有增加權限的情況下創建帳戶並提交門票(也就是我想要任何人提交錯誤報告)。SVN使用Trac權限組寫入身份驗證

我已經設置了讀取訪問權限,並且只向已通過身份驗證的用戶寫入訪問權限。這是我的dav_svn.conf文件的一部分。

AuthType Basic 
AuthName "Subversion Repository" 
AuthUserFile /trac-pages/ocm/htpasswd 

# To enable authorization via mod_authz_svn 
#AuthzSVNAccessFile /etc/apache2/dav_svn.authz 

# The following three lines allow anonymous read, but make 
# committers authenticate themselves. It requires the 'authz_user' 
# module (enable it with 'a2enmod'). 
<LimitExcept GET PROPFIND OPTIONS REPORT> 
    Require valid-user 
</LimitExcept> 

但是,如果有人使用上的Trac的RegistrationModule並創建一個帳戶,然後他們可以寫入倉庫沒有被給予進一步的權限。我想這樣做只有Trac上「已認證」組中的用戶才能提交到存儲庫。

回答

0

Uhm ... Trac上的「已認證」組自動包含所有已經登錄的用戶,包括剛剛註冊新帳戶並登錄的所有用戶。因此,您似乎需要一種方法將svn訪問限制爲僅限於那些擁有其他權限/組的用戶。 (你可以使用Trac源代碼中的sample-plugins/permissions/extrapermissionsprovider.py創建任意的新權限。)

我不知道如何讓svn看看Trac的信息。

您可以查看thisthis插件trac-hacks以讓您管理您在Trac中的svn訪問。 (注意:我沒有用過它們。)這可能會讓你做一些你想要的東西。

信息披露:我是Trac開發人員之一。