您的位置:程序门 -> 软件工程/管理 -> 质量管理/软件测试



急!!!cvs如何添加admin writers, readers文件,怎么添加组并给分配权限


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


急!!!cvs如何添加admin writers, readers文件,怎么添加组并给分配权限[已结贴,结贴人:eddiesong]
发表于:2007-02-09 16:06:37 楼主
急!!!cvs如何添加admin   writers,   readers文件,怎么添加组并给分配权限
发表于:2007-02-13 14:27:261楼 得分:100
不同用户设置不同的访问权限方法

完成如下权限的设置:
假设有用户1:user1   ;用户2:user2
用户1(user1)的工作模块:user1dir;用户2(user2)的工作模块:user2dir
要求实现   user1   只能访问user1dir;user2只能访问user2dir
第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   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
              a.将modues文件设为可编辑状态
              b.在moudes   加入如下3行
                  cvsroot                         cvsroot
                  user1的工作目录   -a     user1dir
                  user2的工作目录   -a     user2dir
              c.保存,提交   commit

第6步,   为2个用户分别上传工作目录
              选中user1的工作目录 'user1dir '               import   module    
              选中user2的工作目录 'user2dir '               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                 选择   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   各自的模块   user1dir,user2dir    
            进行相应的开发工作了


快速检索

最新资讯
热门点击