CVSNT 2.5 权限管理的原则是:如果不显示的指出否定权限,则赋予肯定权限。(这一点个人觉得非常不方便,安全是第一位的。)
例如上面的 fileattr.xml 是所有人,拥有所有权限
13.2 如果要把默认的权限关闭,要用 chacl 命令
以管理员身份执行
cvs chacl -a none
执行完毕之后,应该是这个样子:
<?xml version="1.0" encoding="UTF-8"?>
<fileattr>
<directory>
<owner>test1</owner>
<acl>
<modified_by>cvsadmin</modified_by>
<modified_date>2005.12.11.11.00.04</modified_date>
<all deny="1" />
</acl>
</directory>
</fileattr>
modified_by,modified_date 是注释信息;
<all deny="1" /> 一句,把默认得权限都关闭了,即使是管理员、创建者都没有任何权限了;
并且,如果不显示的指出肯定权限,都是默认的否定权限(和默认的权限规则相反)。
13.3 开通管理员的所有权限
cvs chacl -u testaall -a all
即,testaall 组对 testa 拥有全部权限;
-u 可以是组名称,也可以是单个用户名称。
<?xml version="1.0" encoding="UTF-8"?>
<fileattr>
<directory>
<acl>
<all deny="1" />
<modified_by>cvsadmin</modified_by>
<modified_date>2005.12.11.11.00.04</modified_date>
</acl>
<owner>test1</owner>
<acl user="testaall">
<modified_by>cvsadmin</modified_by>
<modified_date>2005.12.11.11.00.41</modified_date>
<all />
</acl>
</directory>
</fileattr>
这样,testaall 组中的用户拥有所有权限了,其他的用户无任何权限;
如果想要让一个用户拥有 所有权限,加入到 testaall 组即可。
13.4 添加 testar 组用户只读权限
cvs chacl -u testar -a read
说明:
经过 cvs chacl -a none ,如果不显示的指出肯定权限,都是默认的否定权限(和默认的权限规则相反);
相当于 cvs chacl -u testar -a read,nowrite,nocreate,no...(所有的参数加上前缀 no).