如何使用SVN添加用戶及設置SVN權限深度剖析
本節和大家討論一下SVN是如何添加用戶及如何設置SVN權限等問題,主要有兩部分內容,在這里和大家簡單介紹一下,希望大家和我共同學習設置SVN權限方法。
1.添加用戶并設置SVN權限
這里是架設服務器最復雜的地方,筆者試圖把這里搞清楚,可惜,還是有些疑問!??好在服務器還能運轉!
首先說,通過http協議傳輸數據時,用戶是通過apache來操做svn版本庫的,subversion是通過一些模塊和apache進行通訊的。具體原理,有興趣的朋友可以google相關資料。設置用戶訪問權限,有這么幾個工作要做:
(1)版本庫的密碼文件,一般命名為PasswdFile,由用戶通過命令創建,里面保存授權用戶的用戶名和MD5加密后的密碼
(2)apache的httpd.conf文件,我理解這個文件是連接用戶、apache、subversion的橋梁
這里只總結一下具體設置SVN權限操作方法:
1.1創建密碼文件,密碼文件保存在你的版本庫文件目錄下,在終端通過下面的命令創建密碼文件
htpasswd-c/etc/svn/passwordfileusername
//建立新文件及使用者
htpasswd-c-bfilenameuserNamepassWord
//新增使用者或更新原使用者密碼
htpasswd-bfilenameuserNamepassWord
解釋:/etc/svn/版本庫的目錄,建議采用完整路徑,也就是你從filesystem一路找到你的版本庫的所有文件夾
passwordfile密碼文件名稱,可以由用戶自行命名
username你希望添加的用戶名,比如zhangsan,lisi,wangwu
-c用來創建密碼文件,這個命令在密碼文件不存在的情況下可以創建一個文件,可以看到的哦!然后再添加其他
用戶時可以去掉這個命令字。
回車執行本命令,會要求你輸入密碼,一共需要輸入兩便,添加成功后會提示adduserusername,然后可以再繼續添加第二個用戶。
htpasswd/etc/svn/passwordfileseconduser
反復執行此程序,將自己需要添加的用戶添加進去!如果以后有需要還要添加別的用戶,也可以單獨執行上邊的這條命令來添加。
文件創建完成后,你可以去目錄下看一看是否有這么一個文件存在!實際上,應該是存在的,不存在的話就是操作沒有成功啊!
1.2配置httpd.conf文件
設置SVN權限時要配置httpd.conf文件,文件位置,正常安裝的話在etc/apache2/目錄下,雙擊打開進行編輯,添加如下內容
#LoadModuledav_modulemodules/mod_dav.so加載mod_dav模塊
#LoadModuledav_svn_modulemodules/mod_dav_svn.so加載mod_dav_svn模塊
LoadModuleauthz_svn_module/usr/lib/apache2/modules/mod_authz_svn.so加載mod_anthz.svn模塊
DAVsvn
SVNPath/home/bb/svn/vcard/指明版本庫的路徑
AuthTypeBasic認證類型為基本認證
AuthName"SVNrepos"認證名稱,將在IE界面彈出一個對話框,其標題就是SVNrepos
AuthUserFile/home/bb/svn/vcard/VcardPasswdFile加載密碼文件
#AuthzSVNAcessFile//home/bb/svn//vcard/accesspolicy
#satisfyAny
Requirevalid-user要求驗證用戶,即不能匿名訪問
加#號的語句被注釋掉了!如果有兩個以上的版本庫,可以針對每個版本庫添加不同的location標簽,兩個互不影響。
配置完成后,重啟apache,在IE里輸入:http://localhost/vcard(即版本庫名稱),就可以看到相關的對話框。本節講解設置SVN權限問題完畢。
【編輯推薦】