Cliosoft SOS 定义用户组、权限组、分配默认组

版本管理 10 4346 张长瑞 收藏

在使用 Cliosoft SOS 的时候,我们通常会以用户组的方式定义权限。

当权限出现交叉的时候,需要对工作内的 MEMBER 进行多次定义。

是否有一种类似于 SVN 的方式,定义一个用户组,然后将这个用户组添加到工作组的 MEMBER 中实现快速管理呢!!!!

答案当然是有。。

一、用户组

——————————————————————————

打开 sosd.cfg,然后设置一个用户组

set group1 {user1 user2 user3}
set group2 {user1 user3 user4}
set group3 {user1 user2 user4}

使用 set 命令,后跟自定义用户组名,使用 {} 方式添加成员,成员使用空格分割。

工作组 MEMBER 引用

GROUP design {    MEMBER testuser1;    MEMBER $group1;    MEMBER $group2;
}
GROUP test {    MEMBER testuser3;    MEMBER $group1;    MEMBER $group3;
}

定义两个工作组 design 和 test,在定义用户的时候,MEMBER 后面可以直接添加用户名,也可以添加用户组信息。

用户组信息需要用 $ 符号明确它是一个用户组,多个 MEMBER 用分号;分割。

一、权限组

——————————————————————————

定义一个组,名为:TAGGER,可以执行快照、打 tag、取消 tag 等权限

ROLE TAGGER {COMMAND snapshot, tag, tag-B, modattr;}

以上写法代表 TAGGER 可以执行命令 (COMMAND),可执行的命令是快照 (snapshot),打 tag (tag),取消 tag (tag-B),修改属性 (modattr) ,命令之间用逗号,分割。

权限组的权限分为  全局权限 和局部权限。

1、全局权限

若想配置一个全局 TAGGER 权限的用户组,则在 sosd.cfg 文件中直接定义。

TAGGER zhangsan,lisi;

代表 zhangsan,lisi 有权限对全局所有文件有快照、tag、修改权限的信息

2、局部权限

如果定义局部权限,则需要将 TAGGER 写入到 group 中实现

GROUP design {    MEMBER testuser1;    MEMBER $group1;    MEMBER $group2;    TAGGER zhangsan,lisi;
}
GROUP test {    MEMBER testuser3;    MEMBER $group1;    MEMBER $group3;
}

这里我在 design 中定义了 TAGGER 信息,则 zhangsan,lisi 则仅有权限对 design 工作组的所有文件有权限进行快照、tag 等操作。

三、分配默认组

——————————————————————————

当一个用户拥有了多个组之后,需要对用户分配一个默认组,否则用户将以定义的第一个工作组为默认组 (sosd.cfg 文件自上而下)

如何为分配一个默认组:

USER user1 {
    DEFAULT_GROUP test;}

在这里,我们将 user1 的默认用户组分配为 test。

此操作的前提:工作组 GROUP 必须先定义好,并且用户属于这个工作组。


相关推荐:

网友留言:

  1. tel_l3tx9ghw
    回复
    如果在某个lib内,让design有权限ci co schemtic, layout有权限ci co layout view,该如何设定,并且其他lib的design 也无法ci co 这个lib的 schematic ,应该怎么设置
    1. 团子精英
      回复
      配置sosd.cfg文件中的ACL
      ACL {
      READ group; -- can be owner, group or world
      WRITE group; -- can be owner, group or world
      MODIFY_ACL yes; -- can be yes or no (if no then even owner cannot change ACL)
      }
  1. 庞绪林
    回复
    您好,请问下,想配置默认用gvim打开rtl文件,在gui界面的Edit按钮怎么用,点了没反应,谢谢
    1. 团子精英
      回复
      您好,不是特别能理解您这句的意思。。。。。
  1. charles.cl
    回复
    谢谢你的回复,单我试了下还是不行,
    sosd.cfg配置如下:
    OPEN_WORLD no;
    set groupa {test1 test2}
    ADMIN admin, cad;
    ACL {
    READ world; -- can be owner, group or world
    WRITE group; -- can be owner, group or world
    MODIFY_ACL yes;
    }
    GROUP design {
    MEMBER cad;
    MEMBER $groupa;
    }
    报错信息如下:
    Error
    @@ Error: Server: '{can't read "groupa": no such variable} {can't read "groupa": no such variable
    while executing "error Serr'1
    (procedure "Config::source" line 29) invoked from within
    "Config::source $cfgFilePath"
    (procedure "parseConfigRead" line 2) invoked from within
    "parseConfigRead ScfgFilePath"}' while reading the configuration file '/xxx/sos_test.rep/sos1/setup/sosd.cfg' for project 'sos1'.
    1. 团子精英
      回复
      SOS是什么版本呢?
      1. charles.cl
        回复
        SOS-7.04.p12
        1. 团子精英
          回复
          7版本的sos还没有仔细研究。。等我研究下。
  1. charles.cl
    回复
    你好,我按照你的方法设置了用户组,但是在Reread Config 的时候报错。工作组 MEMBER 引用不成功,提示组无效。这是什么情况
    1. 团子精英
      回复
      工作组需要使用set 组名{用户 用户 用户}的模式先创建,要写在上面
您需要 登录账户 后才能发表评论

我要评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
验证码