在我实际为众多客户咨询或实施的过程中,几乎所有的客户(尤其是刚上线OC的客户)都会问我同一个问题:在OC中如何进行权限划分,以及怎样对机器人、流程与公司组织架构对应,进行权限的控制。
OC的组织模型是通过Tenants(租户)与Folders(文件夹)来实现的。
Tenants(租户)
租户这一设计理念,基本所有的SaaS软件都会涉及。我常常会给客户打一个比方,我们做软件开发,就像盖楼一样。健壮的软件首先要有良好的底层架构作为支撑,就好比盖房子的时候需要先打好地基。而使用SaaS,就好比租房。平台方给你盖好了楼,而且这栋楼很神奇,一开始可能只有一个房间,叫做Default,里面提供了很多的工具和设施。你想使用这间Default房间的里工具和设施来做一些自动化的管理工作,只需成为这栋大楼里的一个租户,你只需拿到钥匙就可以进入这个房间里面进行使用了。而老王呢,也想使用房间里的设施和工具,怎么办呢?难道还需要重新盖一遍这个楼吗?不用,这就是这栋楼神奇的地方。它可以在这个楼的内部又变出一间房间出来,里面的工具和设施跟Default的一开始(也就是还没人进去使用过之前)是一样的。这栋楼的管理员可以给这个新房间起个名字,比如叫华北分公司,叫财务部,叫IT运维组……都可以,这样老王只要拿到了这个新房间的钥匙,就可以使用了。进了房间以后你可以根据自己的需要使用里面的设施和工具创建自己的东西。一开始你跟隔壁老王的房间是一样的。而当你使用这个房间的时间越久,你这个房间跟老王的房间就会越来越不一样。你有你自己的Robots(机器人)、Assets(资产)、Queues(队列)等东西(我们可以称之为entities,实体),而老王也有他自己的这一系列实体,你们俩的这些实体是完全隔离的。你不能去动用老王的实体,老王也不能去碰你的实体,不然就该打起来了。了解了租户这个概念以后,我们来看看Orchestrator中租户的一些例子:
- 集团公司里的分公司,或者按区域进行划分,如北方大区、东区、亚太区等等。
- 区分多个开发与测试环境。
- 将敏感数据隔离开,例如工资单流程或者保密项目等。
因此,如果你