CVS權限的設置

 

完成如下權限的設置:
假設有用戶1user1 ;用戶2user2
用戶1(user1)的工作模塊:user1dir;用戶2(user2)的工作模塊:user2dir
要求實現 user1 只能訪問user1dir;user2只能訪問user2dir
 
1步,設置CVS的庫配置文件(模塊CVSROOT)的訪問權限方法:
建立超級用戶的工作目錄 WINCVSADMIN
1.         cvsnt服務器超級用戶administrtor 登陸 wincvs
2.         CHECKOUT 庫控制文件 checkout moudel 'cvsroot',此目錄下的文件爲CVS的高級配置文件,可以在本地進行修改,提交,本身在版本控制之中
3.         修改CVSRoot的訪問權限,在命令行輸入如下命令,#之後爲說明,不需要輸入,每行命令要單獨執行,這是4條命令
cvs chacl default:n #取消所有用戶的默認權限
cvs chacl administrator:rcw #設置Administrator擁有所有權限讀取;創建和刪除;寫入
cvs chown administrator #更改的擁有者Administrator
cvs lsacl #察看權限的設置情況
2步,建立CVS的用戶,正常可以用WINNT系統的用戶作爲CVS 的用戶訪問CVS
但是這種方式安全性太差可以建立CVS 自己的用戶
1.         建立WINNT系統用戶 CVSUSER,權限設爲一般用戶就可以,只要能訪問WINNT就可以
2.         建立密碼文件PASSWD, 直接在服務端 CVSROOT 目錄下建立文件就可以 PASSWD 出於安全考慮,不要將 passwd列在 checkoutlist 文件裏面。
3.         建立CVS用戶WINCVS 命令行下輸入命令
cvs passwd -a -r cvsuser user2 # 建立USER2用戶與系統用戶cvsuser有一樣的權限,回車
# 後提示輸入兩次口令
cvs passwd -a -r cvsuser user1 # 建立user1用戶與系統用戶cvsuser有一樣的權限,回車後
# 提示輸入兩次口令
cvs passwd -a -r administratro administrator  # 建立administrator用戶與系統用戶
# administrator有一樣的權限,回車後提示輸入兩次口令
可以看到PASSWD文件多了兩行
user2:CUXQwLMdoZHNs:cvsuser # 中間爲加密的密碼,密碼使用Unix標準的crypt()函數加密
user1: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文件中加入如下 user2 user1 administrator
5步,配置CVS庫模塊文件--modules
1.         MODUES文件設爲可編輯狀態
2.         MOUDES 加入如下3 CVSRoot CVSRoot user1的工作目錄 -a user1DIR
user2的工作目錄 -a USER2DIR c.保存,提交 COMMIT
6, 2個用戶分別上傳工作目錄
選中USER1的工作目錄'USER1DIR' IMPORT MODULE 選中USER2的工作目錄'USER2DIR' IMPORT MODULE 注意:上傳的目錄不能爲空目錄,其下必須有文件(啥文件都行)上傳成功後,刪除這2個目錄OR 改名
補充一下分組的使用方法:分組:將權限相同的用戶劃分到一組,這樣方便維護。就是角色的意思,分組使用在對模塊訪問權限的劃分。
方法:
1.         在服務器端 cvsroot 目錄下新建文件 group
2.         建立分組 group1,group2 ,group文件內容如下 group1:user1 user2 user3 group2:user5 user6 user7
3.         之後對組進行權限劃分,和對單個用戶方式一樣,就可以使組內用戶和組具有相同的權限,如選中模塊,執行如下命令
chacl -R default:n
cvs chacl -R group1:rcw
cvs lsacl
可以使,用戶 user1 user2 user3 同時具有對該模塊的讀寫和控制的權限
7,下載目錄到本地做權限設置
 CHECKOUT MODULE選擇 user1的工作目錄 'USER1DIR'
CHECKOUT MODULE選擇 user2的工作目錄 'USER2DIR'
選擇菜單/remote/checkou moudule 在打開窗口中點擊'...' 按鈕在打開窗口中選擇 user1的工作目錄 ok 按鈕確定按鈕
8分別設置2用戶(USER1;USER2)對各自目錄的訪問權限
選中模塊 USER1 ,在命令行輸入如下3條命令
cvs chacl -R default:n
cvs chacl -R USER1:rcw
cvs lsacl
選中模塊 USER2 ,在命令行輸入如下3條命令,
cvs chacl -R default:n
cvs chacl -R USER2:rcw
cvs lsacl
說明 '-R '參數表示對模塊的權限是遞歸的。解釋一下:如目錄結構 dira |---dira1 |---dira2 命令:cvs chacl default:n 只對目錄 dira 有效,而對子目錄無效 cvs chacl -R default:n 對目錄dira及其下子目錄都有效
9已經完成了設置
以用戶 USER1 OR USER2 登陸WINCVS 就只能CHECKOU 各自的模塊 USER1DIRUSER2DIR 進行相應的開發工作了
發佈了25 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章