cvs用户访问权限

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

 

 

假设有用户1lxw ; 用户2zxh

有用户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 文件中加入如下

? ? ? ? ? zxh

? ? ? ? ? lxw?

? ? ? ? ? administrator? ? ?

 

5 步, 配置CVS 库模块文件——modules

? ? ? a.MODUES 文件设为可编辑状态

? ? ? b.MOUDES 加入如下3

? ? ? ? CVSRoot? ? ? ? ? ? CVSRoot

? ? ? ? 大狼的工作目录 -a? lxwDIR

? ? ? ? 开心的工作目录 -a? ZXHDIR

? ? ? c. 保存, 提交 COMMIT

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 同时具有对该模块的读写和控制的权限

 

7, 下载目录目到本地做权限设置 CHECKOUT MODULE

? ? ? CHECKOUT MODULE? ? ? ? 选择 大狼的工作目录? 'LXWDIR'

? ? ? CHECKOUT MODULE? ? ? ? 选择 开心的工作目录? 'ZXHDIR'

? ? 做法是这样的

? ? ? 选择 菜单\remote\checkou moudule

? ? ? ? ? ? 在打开窗口中 点击‘... ’ 按钮

? ? ? 在打开窗口中选择 大狼的工作目录

? ? ? ok 按钮

? ? ? 确定 按钮

 

 

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

 

 

 

* 对我有用[0]

* 丢个板砖[0]

* 引用

* 举报

* 管理

* TOP

回复次数:2

 

*

* dyengying

* (dy)

*

* 等 级:

*

#1 楼 得分:0 回复于:2009-03-12 14:34:51

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? wincvs 日常操作

一丶 修改文件,并上传到服务器上

1. 双击文件打开,进行修改,然后保存后

2. 在修改的文件上右键点击选择commit selection.. 提交选项,被修改的文件标记是红色的.

3. 在弹出的对话框中,你无需任何设置,你可以填入你的备注,注明你是修改了什么. 修改过的文件版本会更新

 

二丶下载服务器的文件,替换本地文件

你对服务器上的文件做了修改,但是你本地的文件却并没有修改,现在就要到服务器上开载最新的版本来替换旧的版本

1. 在模块上右键选择Update selection 【更新选项】

2. 在弹出的对话框中也无需做任何的设置,确认即可

3. 这时,你的文件版本会更新,在下面显示地方也能看到更新了一个文件的字样。

 

三丶修改了一个文件,结果发现修改错了,需要重新下载服务器的文件

1. 在发现修改错的文件上右键选择Update selection..

2. 在弹出的对话框中勾中Get th clean copy ,点击OK ,成功!

 

四丶添加一个目录

1. 打开你要创建到其下面的目录

2. 在这个目录下的任一文件上右键选择Explore selection 【资源管理器】

3. 创建好文件夹或文件

4. 上传你把创建的文件夹(如果文件夹中没有子目录或文件,没有递归上传,需要在操作一遍)

点击modfy--add selection 修改-- 添加文件

5. 如果是文件的话请点击modfy--add binary 修改-- 添加二进制文件,然后在新创建的文件上右键选择commit selection ,上传文件才算成功

 

五丶如何取回以前的某个版本

1. 在要取回以前版本的文件上右键选择Update selection 更新选项

2. 在弹出的对话框中的选择卡sticky options 中勾选Retrieve rev./tag/bran 找回版本/ 标签/ 分支 在其中选择你要找回的版本 点击确定就OK

 

六丶删除分支/ 标签,取得最新的版本

1. 在要取得最新版本的文件上右键选择Update selection 更新选择

2. 在弹出的对话框中的选择卡Update settings 中勾中Reset any sticky date/tag/'-k' optionsOK

 

七丶固定版本

经过一段时间修改,各个文件的版本不一至,而且文档管到一个阶段,需要固定版本

1. 在模块上右键选择commit selection

2. 在弹出的对话框中的选项卡Commit options 中勾中Force revision/branch 选择要固定的版本就OK

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值