摘要:Mac OSX 與 Redmine 的邂逅【Part4】設定 apache 與 subversion 的多專案權限
假設我們在subversion有多個專案,並且希望多個專案的權限要不一樣,那我們可以透過下列的方式達成。
subversion的目錄建置方式請參閱 Mac OSX 與 Redmine 的邂逅【Part1】安裝 Redmine + Subversion
設定方式如下:
-
修改/Applications/redmine-1.0.2-0/apache2/conf/httpd.conf
-
<location /svn>
DAV svn
#SVNListParentPath on
SVNParentPath /Applications/redmine-1.0.2-0/subversion/repos
AuthType Basic
AuthName "Subversion Login"
AuthUserFile /Applications/redmine-1.0.2-0/subversion/svnuser.auth # 使用者的帳號密碼存放文件
AuthzSVNAccessFile /Applications/redmine-1.0.2-0/subversion/svnaccess.pub # svn的存取規則
Require valid-user
</location>
-
<location /svn>
-
利用指令 htpasswd -m /Applications/redmine-1.0.2-0/subversion/svnuser.auth username 來建立帳號、密碼
-
新增/Applications/redmine-1.0.2-0/subversion/svnaccess.pub 文件
-
寫入下面內容:
## 設定群組
[groups]
admin = admin1, admin2
g_code = user1,user2
g_doc = user3,user4
## 設定根目錄權限,r=讀、w=寫
[/]
* =
@admin = rw #admin群組可以讀寫全部
[proj1:/] # 版本目錄名稱
@g_code = rw #群組g_code可以讀寫
@g_doc=r #群組g_doc只能讀
[proj2:/]
user3=rw #使用者user3可以讀寫
user4=r #使用這user4可以讀
-
寫入下面內容:
備註:
- 使用者的帳號密碼與/Applications/redmine-1.0.2-0/subversion/svnuser.auth 是關聯的。
- svnaccess.pub 的規則變更是不用重啟apache就可以套用的。