全部文档
文档中心领域模型功能访问策略(模型权限)策略兼容权限方案

策略兼容权限方案

访问策略已兼容老版权限方案,通过配置先验条件为权限方案的策略。以项目管理为例

类似上面章节例子:需求管理,简化场景与描述,主要介绍策略兼容相关配置

项目场景:项目经理新建项目,提交后发起项目流程:开始->大区负责人审批项目->结束

  • 项目状态:待提交、待评审、已通过、已拒绝。其中,待提交对应“项目经理新建项目”步骤,待评审对应“大区负责人审批项目”步骤,审批后为已通过或已拒绝

  • 项目权限

    • 项目经理可以新建项目

    • 项目经理可以查看自己负责的项目

    • 大区负责人可以查看该大区已提交的项目,已提交包括项目状态:待评审、已通过、已拒绝

权限方案搭建

  • 新建实体维度Entity

  • 平台配置中新增用户组:项目经理

  • 新建权限方案access

DeepModel&领域模型搭建(不包含权限)

  • DeepModel中新建项目对象Proj,包含状态字段proj_status,有四种状态:待提交(editing)、待评审(submitted)、已通过(approved)、已拒绝(rejected);包含事业部字段entity,取值需要对应实体维度Entity,可从DM-维度新建基于实体维度Entity的视图对象,作为事业部字段entity的链接对象

  • 新建基于项目对象的领域模型,即项目模型

配置策略前需要先开启额外启用权限方案,开启后,如果存在先验条件为权限方案的策略,则不能关闭

选择关联的当前应用的权限方案

映射已选权限方案中的维度到模型主对象的文本属性或单选链接,判断条件时可按维度设置过滤主对象数据

新建策略时,全局权限、行级权限的先验条件都可设置为权限方案。注:权限方案暂不支持谓语拒绝

  • 全局权限的先验条件为权限方案时,需要设置角色/角色组,可多选,在其中任一角色/角色组(对应用户/用户组)的用户视为满足该条件

    • 如上图策略项目经理可以新建项目,假设角色/角色组设置为项目经理,如果当前用户D在项目经理用户组,则满足条件

  • 行级权限的先验条件为权限方案时,需要设置以下两部分,同时满足这两部分才视为满足该条件

    • 角色/角色组:可多选,判断条件时,首先用户需要在其中任一角色/角色组(对应用户/用户组),然后通过符合的角色/角色组,在权限方案中获取各维度取值范围,如果维度映射主对象的属性/链接数据都在对应维度取值范围内,则视为满足角色/角色组条件

      • 如上图策略大区负责人可以查看该大区已提交的项目,假设角色/角色组设置为华北负责人、华东负责人、华南负责人,如果当前用户D不是任何大区的负责人,则不满足角色/角色组条件;如果当前用户A为华北负责人,则项目数据中事业部需要为HB(华北)的后代即DEPT_001(001事业部)或DEPT_002(002事业部),否则不满足角色/角色组条件

    • 状态字段:可不配置,或配置多个主对象状态字段与对应状态范围,注:一个状态字段配置在一行,由于不同行之间类似and拼接,以过滤主对象数据。判断条件时,如配置的所有状态字段数据都在对应范围内,即视为满足状态字段条件;如未添加任何状态字段,也视为满足状态字段条件

先验条件为权限方案的策略与其他策略一起进行权限判定

假设项目对象有以下12条数据

项目ID

项目状态

事业部(entity)

项目负责人

PROJ_0001

editing

DEPT_001

D

PROJ_0002

submitted

DEPT_001

D

PROJ_0003

approved

DEPT_001

D

PROJ_0004

rejected

DEPT_001

D

PROJ_0005

editing

DEPT_003

D

PROJ_0006

submitted

DEPT_003

D

PROJ_0007

approved

DEPT_003

D

PROJ_0008

rejected

DEPT_003

D

PROJ_0009

editing

DEPT_006

D

PROJ_0010

submitted

DEPT_006

D

PROJ_0011

approved

DEPT_006

D

PROJ_0012

rejected

DEPT_006

D

在新标签页测试指定用户的权限

  • 华北负责人用户A测试结果如下,其中可查看需求:PROJ_0002、PROJ_0003、PROJ_0004

  • 华东负责人用户B测试结果如下,其中可查看需求:PROJ_0006、PROJ_0007、PROJ_0008

  • 华南负责人用户C测试结果如下,其中可查看需求:PROJ_0010、PROJ_0011、PROJ_0012

  • 项目经理用户D测试结果如下

  • 项目经理用户E测试结果如下

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send