完成如下許可權的設定:
假設有使用者1:lxw ;使用者2:zxh
使用者1(lxw)的工作模組:lxwdir;使用者2(zxh)的工作模組:zxhdir
要求實現 lxw 只能訪問lxwdir;zxh只能訪問zxhdir
第1步,設定CVS的庫設定檔(模組CVSROOT)的存取權限
方法:建立超級使用者的工作目錄 WINCVSADMIN
a.以cvsnt伺服器超級使用者administrtor 登陸 wincvs
b.CHECKOUT 庫控制檔案 checkout moudel 'cvsroot',此目錄下的檔案為CVS的進階設定檔,可以在本地進行修改,提交,本身在版本控制之中
c.修改CVSRoot的存取權限,在命令列輸入如下命令 #之後為說明,不需要輸入 每行命令要單獨執行,這是4條命令
cvs chacl default:n #取消所有使用者的預設許可權
cvs chacl administrator:rcw #設定Administrator擁有所有許可權 讀取;建立和刪除;寫入
cvs chown administrator #更改的擁有者Administrator
cvs lsacl #察看許可權的設定情況
第2步,建立CVS的使用者
正常可以用WINNT 系統的使用者作為CVS 的使用者,訪問CVS ,但是這種方式安全性太差
可以建立CVS 自己的使用者
a.建立WINNT系統使用者 CVSUSER,許可權設為一般使用者就可以,只要能訪問WINNT就可以
b.建立密碼檔案PASSWD,
直接在服務端 CVSROOT 目錄下建立檔案就可以 PASSWD
出於安全考慮,不要將 passwd列在 checkoutlist 檔案裡面。
C.建立CVS使用者
在WINCVS 命令列下輸入命令
cvs passwd -a -r cvsuser zxh #建立ZXH使用者與系統使用者cvsuser有一樣的許可權,斷行符號後提示輸入兩次口令
cvs passwd -a -r cvsuser lxw #建立lxw使用者與系統使用者cvsuser有一樣的許可權,斷行符號後提示輸入兩次口令
cvs passwd -a -r administratro administrator #建立administrator使用者與系統使用者administrator有一樣的許可權,斷行符號後提示輸入兩次口令
可以看到PASSWD 檔案多了兩行
zxh:CUXQwLMdoZHNs:cvsuser #中間為加密的密碼,密碼使用Unix標準的crypt()函數加密
lxw:ZTUCMKUkZ6ap2:cvsuser
administrator:oN2Stm4NIf31Q:administrator
第3步, 使用CVS使用者登陸
由於CVS 在預設模式下,是採用系統使用者登陸的,這就要修改設定檔 CONFIG
設定檔案CONFIG為修改狀態
加入如下一行
SystemAuth=no #yes 預設值,表示 如果使用者在PASSWD檔案中不存在,就用系統使用者檢查許可權是否正確
#no 表示用PASSWD檢查使用者密碼許可權是否正確
之後提交
(在設定CONFIG 檔案SystemAuth=no 之後
需要在cvs 控制目錄cvsroot\ 下建立admin檔案
這個檔案是指定CVSNT的管理員列表的檔案,CVSNT根據這個檔案來判斷一個使用者是否是管理員。檔案的內容很是一個使用者列表。如下:
user1
user2
user3
這些代表user1,user2,user3都是管理員 ;
在此之前 cvs將伺服器的管理使用者作為自己的管理使用者的)
第4步,加入檔案 WRITERS ,READERS 控制使用者的讀寫權限
在cvsroot目錄下加入兩個文字檔,WRITERS ,READERS
其每行內容為 使用者名稱 斷行符號
只有加入WRITERS中的使用者才能進行提交
加入READERS中的使用者只能讀取
同時在兩個檔案中的使用者只能讀取
在writers檔案中加入如下
zxh
lxw
administrator
第5步, 配置CVS庫模組檔案——modules
a.將MODUES檔案設為可編輯狀態
b.在MOUDES 加入如下3行
CVSRoot CVSRoot
大狼的工作目錄 -a lxwDIR
開心的工作目錄 -a ZXHDIR
c.儲存,提交 COMMIT
第6步, 為2個使用者分別上傳工作目錄
選中LXW的工作目錄'LXWDIR' IMPORT MODULE
選中ZXH的工作目錄'ZXHDIR' IMPORT MODULE
注意:上傳的目錄不可為空目錄,其下必須有檔案(啥檔案都行)
上傳成功後,刪除這2個目錄OR 改名
(補充一下分組的使用方法:
分組:將許可權相同的使用者劃分到一組,這樣方便維護。就是角色的意思,分組使用在對模組存取權限的劃分。
方法:
a.在伺服器端 cvsroot 目錄下建立檔案 group
b.建立分組 group1,group2 ,group檔案內容如下
group1:user1 user2 user3
group2:user5 user6 user7
c.之後對組進行許可權劃分,和對單個使用者方式一樣,就可以使組內使用者和組具有相同的許可權,如 選中模組,執行如下命令
chacl -R default:n
cvs chacl -R group1:rcw
cvs lsacl
可以使,使用者 user1 user2 user3 同時具有對該模組的讀寫和控制的許可權
)
第7步,下載目錄目到本地做使用權限設定 CHECKOUT MODULE
CHECKOUT MODULE 選擇 大狼的工作目錄 'LXWDIR'
CHECKOUT MODULE 選擇 開心的工作目錄 'ZXHDIR'
做法是這樣的
選擇 菜單\remote\checkou moudule
在開啟視窗中 點擊‘...’ 按鈕
在開啟視窗中選擇 大狼的工作目錄
ok 按鈕
確定 按鈕
第8步 分別設定2使用者(LXW;ZXH)對各自目錄的存取權限
選中模組 LXW ,在命令列輸入如下3條命令,
cvs chacl -R default:n
cvs chacl -R LXW:rcw
cvs lsacl
選中模組 ZXH ,在命令列輸入如下3條命令,
cvs chacl -R default:n
cvs chacl -R ZXH:rcw
cvs lsacl
說明 加 ‘-R ’參數表示對模組的許可權是遞迴的。解釋一下:
如目錄結構 dira
|---dira1
|---dira2
命令:cvs chacl default:n 只對 目錄 dira 有效,而對子目錄無效
cvs chacl -R default:n 對目錄dira及其下子目錄都有效
第9步 已經完成了設定
以使用者 LXW OR ZXH 登陸WINCVS 就只能CHECKOU 各自的模組 LXWDIR,ZXHDIR
進行相應的開發工作了