CVS 配置

来源:互联网 发布:模板windows桌面下载 编辑:程序博客网 时间:2024/04/25 08:11

不同用户设置不同的访问权限方法

完成如下权限的设置:
假设有用户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    
            进行相应的开发工作了

原创粉丝点击