CVS許可權設定

2021-03-31 17:31:26 字數 3743 閱讀 7086

不同使用者設定不同的訪問許可權方法

dalang 20040112

關於許可權管理的操作,我感覺不錯的

假設有使用者1:lxw ;使用者2:zxh

有使用者1的模組::lxwdir;使用者2的模組: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檔案中加入如下

zxhlxw  

administrator      

第5步,    配置cvs庫模組檔案——modules

a.將modues檔案設為可編輯狀態

b.在moudes 加入如下3行

cvsroot            cvsroot

大狼的工作目錄 -a  lxwdir

開心的工作目錄 -a  zxhdir

c.儲存,提交 ***mit

第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 同時具有對該模組的讀寫和控制的許可權

第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  

進行相應的開發工作了

在執行命令cvs passwd -a -r cvsuser zxh         的時候

在本地目錄 cvsroot 目錄下的passwd檔案裡沒有生成相關的使用者和密碼

而在伺服器 cvsroot 目錄下的passwd檔案裡生成了相關的使用者和密碼

如果是這樣,是一種正常現象

原因是你沒有把passwd 控制檔案加入到 cvs版本 控制之中—檔案checkoutlist裡

CVS許可權設定

關於許可權管理的操作,我感覺不錯的 假設有使用者1 lxw 使用者2 zxh 有使用者1的模組 lxwdir 使用者2的模組 zxhdir 要求 lxw 只能訪問lxwdir zxh只能訪問zxhdir 第1步,設定cvs的庫配置檔案 模組cvsroot 的訪問許可權 方法 建立超級使用者的工作目錄...

linux設定cvs服務

在suse linux上設定cvs服務相當簡單,步驟以下 1,先新增乙個組及使用者 groupadd cvs useradd g cvs g cvs d home cvsroot cvsroot 在home下新增乙個cvsroot目錄,新增cvsroot使用者並納入cvs組 passwd cvsro...

mysql 許可權設定 mysql 許可權設定

關於mysql的使用者管理,筆記 1 建立新使用者 通過root使用者登入之後建立 grant all privileges on to testuser localhost identified by 123456 建立新使用者,使用者名為testuser,密碼為123456 grant all ...