您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源配置管理工具 > cvs
CVS 權(quán)限配置方法
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/4/9 17:14:42 ] 推薦標(biāo)簽:

不同用戶設(shè)置不同的訪問(wèn)權(quán)限方法
DALANG 20040112
關(guān)于權(quán)限管理的操作,我感覺(jué)不錯(cuò)的

假設(shè)有用戶1:lxw ;用戶2:zxh
有用戶1的模塊::lxwdir;用戶2的模塊:zxhdir
要求 lxw 只能訪問(wèn)lxwdir;zxh只能訪問(wèn)zxhdir

第1步,設(shè)置CVS的庫(kù)配置文件(模塊CVSROOT)的訪問(wèn)權(quán)限
方法:建立超級(jí)用戶的工作目錄 WINCVSADMIN
       a.以cvsnt服務(wù)器超級(jí)用戶administrtor 登陸 wincvs
       b.CHECKOUT 庫(kù)控制文件 checkout moudel 'cvsroot',此目錄下的文件為CVS的高級(jí)配置文件,可以在本地進(jìn)行修改,提交,本身在版本控制之中
       c.修改CVSRoot的訪問(wèn)權(quán)限,在命令行輸入如下命令  #之后為說(shuō)明,不需要輸入 每行命令要單獨(dú)執(zhí)行,這是4條命令
         cvs chacl default:n          #取消所有用戶的默認(rèn)權(quán)限
         cvs chacl administrator:rcw  #設(shè)置Administrator擁有所有權(quán)限 讀取;創(chuàng)建和刪除;寫(xiě)入
         cvs chown administrator      #更改的擁有者Administrator
         cvs lsacl                   #察看權(quán)限的設(shè)置情況
第2步,建立CVS的用戶
       正?梢杂肳INNT 系統(tǒng)的用戶作為CVS 的用戶,訪問(wèn)CVS ,但是這種方式安全性太差
       可以建立CVS 自己的用戶
       a.建立WINNT系統(tǒng)用戶 CVSUSER,權(quán)限設(shè)為一般用戶可以,只要能訪問(wèn)WINNT可以
       b.建立密碼文件PASSWD,
           直接在服務(wù)端 CVSROOT 目錄下建立文件可以 PASSWD
           出于安全考慮,不要將 passwd列在 checkoutlist 文件里面。
       C.建立CVS用戶
          在WINCVS 命令行下輸入命令
          cvs passwd -a -r cvsuser zxh         #建立ZXH用戶與系統(tǒng)用戶cvsuser有一樣的權(quán)限,回車(chē)后提示輸入兩次口令
          cvs passwd -a -r cvsuser lxw         #建立lxw用戶與系統(tǒng)用戶cvsuser有一樣的權(quán)限,回車(chē)后提示輸入兩次口令
          cvs passwd -a -r administratro administrator #建立administrator用戶與系統(tǒng)用戶administrator有一樣的權(quán)限,回車(chē)后提示輸入兩次口令
          可以看到PASSWD 文件多了兩行
          zxh:CUXQwLMdoZHNs:cvsuser     #中間為加密的密碼,密碼使用Unix標(biāo)準(zhǔn)的crypt()函數(shù)加密
          lxw:ZTUCMKUkZ6ap2:cvsuser   
          administrator:oN2Stm4NIf31Q:administrator
第3步, 使用CVS用戶登陸
       由于CVS 在默認(rèn)模式下,是采用系統(tǒng)用戶登陸的,這要修改配置文件 CONFIG
       設(shè)置文件CONFIG為修改狀態(tài)
       加入如下一行
       SystemAuth=no  #yes 默認(rèn)值,表示 如果用戶在PASSWD文件中不存在,用系統(tǒng)用戶檢查權(quán)限是否正確
                      #no   表示用PASSWD檢查用戶密碼權(quán)限是否正確
       之后提交
       (在設(shè)置CONFIG 文件SystemAuth=no  之后
        需要在cvs 控制目錄cvsroot/ 下建立admin文件 
        這個(gè)文件是指定CVSNT的管理員列表的文件,CVSNT根據(jù)這個(gè)文件來(lái)判斷一個(gè)用戶是否是管理員。文件的內(nèi)容很是一個(gè)用戶列表。如下:
user1
  user2
  user3
這些代表user1,user2,user3都是管理員 ;
在此之前 cvs將服務(wù)器的管理員用戶作為自己的管理員用戶的)

第4步,加入文件 WRITERS ,READERS   控制用戶的讀寫(xiě)權(quán)限
      在cvsroot目錄下加入兩個(gè)文本文件,WRITERS ,READERS
      其每行內(nèi)容為  用戶名 回車(chē)
      只有加入WRITERS中的用戶才能進(jìn)行提交
      加入READERS中的用戶只能讀取
      同時(shí)在兩個(gè)文件中的用戶只能讀取
      在writers文件中加入如下
          zxh
          lxw 
          administrator     

第5步,    配置CVS庫(kù)模塊文件——modules
       a.將MODUES文件設(shè)為可編輯狀態(tài)
       b.在MOUDES 加入如下3行
         CVSRoot            CVSRoot
         大狼的工作目錄 -a  lxwDIR
         開(kāi)心的工作目錄 -a  ZXHDIR
       c.保存,提交 COMMIT
第6步, 為2個(gè)用戶分別上傳工作目錄
       選中LXW的工作目錄'LXWDIR'       IMPORT MODULE 
       選中ZXH的工作目錄'ZXHDIR'       IMPORT MODULE         
       注意:上傳的目錄不能為空目錄,其下必須有文件(啥文件都行)
       上傳成功后,刪除這2個(gè)目錄OR 改名
(補(bǔ)充一下分組的使用方法:
分組:將權(quán)限相同的用戶劃分到一組,這樣方便維護(hù)。是角色的意思,分組使用在對(duì)模塊訪問(wèn)權(quán)限的劃分。
方法:
a.在服務(wù)器端 cvsroot 目錄下新建文件 group
b.建立分組 group1,group2 ,group文件內(nèi)容如下
group1:user1 user2 user3
  group2:user5 user6 user7
c.之后對(duì)組進(jìn)行權(quán)限劃分,和對(duì)單個(gè)用戶方式一樣,可以使組內(nèi)用戶和組具有相同的權(quán)限,如 選中模塊,執(zhí)行如下命令
   chacl -R default:n
      cvs chacl -R group1:rcw
      cvs lsacl 
可以使,用戶 user1 user2 user3 同時(shí)具有對(duì)該模塊的讀寫(xiě)和控制的權(quán)限

第7步,下載目錄目到本地做權(quán)限設(shè)置 CHECKOUT MODULE
       CHECKOUT MODULE        選擇 大狼的工作目錄  'LXWDIR'
       CHECKOUT MODULE        選擇 開(kāi)心的工作目錄  'ZXHDIR'
    做法是這樣的
      選擇 菜單/remote/checkou moudule
            在打開(kāi)窗口中 點(diǎn)擊‘...’ 按鈕
      在打開(kāi)窗口中選擇 大狼的工作目錄
      ok 按鈕
      確定 按鈕

第8步 分別設(shè)置2用戶(LXW;ZXH)對(duì)各自目錄的訪問(wèn)權(quán)限
      選中模塊 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
說(shuō)明 加 ‘-R ’參數(shù)表示對(duì)模塊的權(quán)限是遞歸的。解釋一下:
如目錄結(jié)構(gòu)   dira
                               |---dira1
                               |---dira2
命令:cvs chacl default:n 只對(duì) 目錄 dira 有效,而對(duì)子目錄無(wú)效
      cvs chacl -R default:n    對(duì)目錄dira及其下子目錄都有效
                             
第9步 已經(jīng)完成了設(shè)置 
      以用戶 LXW OR ZXH 登陸WINCVS 只能CHECKOU 各自的模塊 LXWDIR,ZXHDIR 
      進(jìn)行相應(yīng)的開(kāi)發(fā)工作了

在執(zhí)行命令cvs passwd -a -r cvsuser zxh         的時(shí)候
在本地目錄 CVSROOT 目錄下的PASSWD文件里沒(méi)有生成相關(guān)的用戶和密碼
而在服務(wù)器 CVSROOT 目錄下的PASSWD文件里生成了相關(guān)的用戶和密碼

如果是這樣,是一種正,F(xiàn)象
原因是你沒(méi)有把passwd 控制文件加入到 cvs版本 控制之中—文件checkoutlist里

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd