一
通过
CVS
验证模式进行控制
(
假设系统以
Administrator
登陆
)
1
.
安装
CVSNT
。
2
.
设置
CVSNT
的
Repositories
到一个具体的目录。
3
.
在
Win2000
下设置系统环境变量,确定
CVSNT
的安装目录在
path
路径中。
4
.
同时设置
Win2000
的环境变量
CVSROOT
到刚才指定的
Repositories
目录。保存退出。
5
.
打开
cmd
窗口。输入
cvs init
6
.
在
Respositories
下的
CVSROOT
目录中新建一个
passwd
的文件,文件内容如下:
administrator:
7
.
安装
WinCVS
或者
TortoiseCVS
等
CVS
的客户端工具。
8
.
以
Administrator
的身份和密码登陆
CVS
,取出
CVSROOT
模块。
9
.
在取出的模块目录中新增
admin
和
group
两个文件。其中
admin
文件用来指明哪一个用户是管理员帐号。可以录入
Administrator
(如果指定其他帐号,一定要确定该帐号在
Win2000
中存在,同时,后面的部分操作需要以该帐号登陆,如果这里采用
ADMIN
,则比较简单)然后在新建的
group
文件中对用户进行分组,文件的格式如下:
组名:用户
1
用户
2
用户
3
(用户之间用空格分隔)
10
.把新建的这两个文件添加到
CVS
服务器,并提交。
11
.修改
checkoutlist
文件,加入一行
admin
,以便
CVS
服务器能自动通过新建的文件知道管理员帐号。
12
.修改
config
文件的
SystemAuth=no
,并去掉前面的注释符号
#
,在提交之前要确认一下你上面的修改是否正确,如果提交了这个文件,
CVSNT
验证模式就开始生效了。
13
.提交刚才修改的
checkoutlist
和
config
文件。
14
.打开
CMD
窗口,进入取出的
CVSROOT
目录。修改
CVSROOT
的默认权限。
cvs chacl default:n
取消所有用户的默认权限(针对相应的目录)
cvs chacl administrator:rcw
设置管理员拥有所有权限(针对相应的目录)
15
.为所有的用户建立
passwd
的内容。具体的命令需要打开
CMD
窗口,输入
cvs passwd –a username (
确定这时候的登陆帐号是刚才
admin
中配置的帐号
,
否则会提示只有管理员才有权限修改其他帐号的密码。
)
16
.导入具体项目。打开
cmd
窗口,进入到项目源代码目录,输入
cvs import –m “
模块名字
” “
描述
” “
版本信息
” (
注意,二进制文件导入可能会存在问题。最好不要通过这种方式导入二进制文件。
)
17
.为该项目的人员设定
group
文件。如果需要进行读和写的单独控制,可以在
group
中为该项目建立两个用户组,一个组是只能读的用户列表,一个是可读写的用户列表。
18
.提交修改后的
group
文件。
19
.找到
Repositories
目录下生成的项目目录。在根目录下,默认只有一个
.owner
的文件来控制用户,可以在这里添加一个
.perms
文件来控制读写。
.owner
文件控制那些用户可以访问这个项目。而
.perms
文件控制用户的权限,用户的权限是
rcwn
中的一个。其中
r
表示读取权限、
c
表示创建和删除权限、
w
表示写入权限、
n
表示无任何权限。默认情况下是
default:rcw
,可以在
.perms
文件中添加
group
的名字,冒号,后面跟具体的权限。如
default:n group1:rcw group2:r
20
.如果只是简单的控制有没有权限读,则只需要在根目录下添加
.perms
文件就可以了,如果要控制有读取权限的用户写入,则需要每个目录单独控制,可以把
.owner
和
.perms
两个文件分别拷贝到各个目录下即可。
说明:通过这两个文件来控制访问权限的方法,比较繁琐。下面介绍另外一种控制方法。
二
.
通过
Windows
的目录访问权限进行控制
1
.
安装
CVSNT
和客户端工具。
2
.
新建
Repositories
目录和
Lock
目录。如
CVSFile
和
CVSLock
。
3
.
在系统中建立用户
test1
和
test2
,同时建立
cvsReaders
和
cvsWriters
组,分别分配
test1·
和
test2
用户到两个组中。
4
.
执行
cvs init
,初始化
cvs
的
Repositories
目录。
5
.
利用
CVS
客户端工具下载
CVSROOT
目录下的内容到本地,修改
config
文件中的
LockDir=e:/cvsLock
,提交该文件。同时确保
cvsReaders
和
cvsWriters
都有读写
cvsLock
目录的权限,默认是
everyone
,则不用修改。
6
.
设置
CVSFile
的目录的权限。右键
——>
属性
——>
安全,删除
everyone
权限,然后添加
cvsReaders
、
cvsWriters
、
administrators
组的完全控制权限给该目录。
7
.
进入到
CVSFile/CVSROOT
目录下,对
config
和
history
两个文件添加
everyone
权限。这样就可以显示历史和模块列表了。
8
.
导入项目。
cvs import –m “test” “test” “test”
。
(
注意,二进制文件导入可能会存在问题。
)
9
.
对导入的项目,在
CVSFile
目录下会生成一个相应的目录。再对这个目录进行权限控制。右键
——>
属性
——>
安全,取消所有继承来的权限,重新添加
cvsReaders
的读权限、
cvsWriters
和
administrators
的完全控制权限。
好了,现在
test1
用户可以下载
cvs
中的文件,但是不能修改提交。
test2
用户可以下载,同时也可以修改提交增加文件等等。要添加用户,只需要在
Windows
中的用户管理中,为用户组添加用户就可以了。对于
CVS
的管理员,可以设置到
Administrators
组中,不过这样安全不太好。也可以单独建立一个管理员组,分配所有的权限就可以了。
说明:这种控制方法简单,但是要为每一个项目建立两个用户组,同时
Windows
系统中会存在大量的用户。