页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

  • 快速授权控制顶层功能访问
  • 访问控制防止数据异常泄露
  • 对象规则实现细粒度数据保护
  • 支持统一认证服务集成

...

基本概念

 操作授权项—Operation Authorization Item在DWF,模块和操作在创建时,系统都会自动建立与它匹配的授权项,授权项是实现权限的基础。

...

 权限分配—Authorization用户和授权项之间的分配关系称为权限分配。

...

基本功能

授权模型包含:功能授权、数据访问授权二个层次。

2.1基本功能

...

功能授权可以通过基于功能授权和基于组织授权进行控制,其中操作授权是功能树中的一级功能,开启操作授权后会在功能树中列出来。

数据访问授权是利用用户或用户组根据事先定义的授权规则过滤数据。

授权规则是用户定义的数据访问的生效条件,可以通过定义授权规则来实现数据层面的权限控制,授权规则的特性如下:

  • 权限的继承性:功能授权、类和类属性授权(访问控制),对组织树(用户组)的授权都具有继承性。
  • 当设置了父组织(用户组)的权限,其下的子组织(包括子用户组和用户)会继承父组织的权限规则;如果对某个子用户组或者用户收回权限,该子用户组/用户权限规则优先级高于父组织的权限规则,子用户组/用户的权限将不再受到父用户组的影响。

(一)基于功能授权

   基于功能实现对组织的授权,通常用于对新增的功能实现对组织的授权。

...

(二)基于组织授权

基于组织和用户实现对应用通道和功能树的授权。

基于功能的授权和基于组织的授权其本质都是基于组织对功能进行授权。功能授权采用白名单机制,权限粒度为模块、模块操作;即默认普通用户没有查看和操作应用及功能(模块及模块操作)的权限;需要管理员根据实际业务添加用户(组)对具体应用的功能权限。

信息
title功能授权需要注意:
  • 功能模型划分完模块之后,DWF默认没有为任何用户分配权限,需要建模人员完成授权建模,用户才有权限看到应用界面,而且,只有在模块和模块操作的授权项被分配给用户后才能执行操作。
  •  授权功能树的每一个节点都需要手动设置,如果只给根节点添加了授权,子节点没有添加,用户只能看到根目录,而无法看到子节点的页面;反过来,如果只为子节点添加了授权,根节点没有添加,则用户无法看到根目录和它包含的所有子节点页面。

...

(三)操作授权

基于功能授权还有一种情况是基于操作的授权

  • 操作授权是针对表单中的操作(按钮)进行授权的方式。
  • 默认用户都有对表单操作使用的权限。可通过“操作”控件设置区“开启授权”,在“管理授权”处对指定用户(组)赋予权限时,仅授权用户具有表单中的操作权限,非授权用户无表单中的操作权限。
信息
title操作授权需要注意:
  • 如果打开“开启授权”模式,则表单操作按钮就会受到权限控制(均无权限),此时点击“管理授权“加入对应的用户或用户组即可完成该操作按钮的的授权。

...

(四)数据访问控制

”访问控制“是针对类和类属性的授权方式。访问权限粒度为类、类属性。对类操作访问控制授权包括:新增,删除, 修改,查询;对属性操作访问控制授权包括:编辑,查询。

...

  •  独立模式:是按照用户/用户组进行授权;
  •  批量模式:可以按照用户/用户组进行“批量允许”或“批量禁止”的授权操作,批量授权模式支持勾选方式  。

...

(五)对象访问控制

针对符合属性授权规则中的对象进行访问控制的方式,称为对象访问授权。

...

 4)将前述查询的关联类的结果集与左/右对象的对象授权规则的结果集取交集返回。

2.3 授权规则

(1)权限的继承性:功能授权、类和类属性授权(访问控制),对组织树(用户组)的授权都具有继承性。

...

...


建模过程

...

(一)基于组织授权

”基于组织授权“的建模过程:

  •  1. 进入权限模型,选择”基于组织授权“;
  •  2. 选择组织和用户;
  •  3.选择应用通道和功能模块(选择零件管理模块);
  •  4. 点击”保存“件,完成对零件管理的授权过程。

图-基于组织授权

...

(二)表单操作授权

 表单操作授权就是对表单上的按钮控件进行授权:通过在表单定义的操作中“开启授权”,可以在 “管理授权”中实现指定用户(组)对操作权限的控制。进入表单模型,选择“实体类表单”,举例中选择的零件实体类的多对象表单;建模过程如下:

...

  •  1. 选择要进行访问控制的操作按钮;
  •  2. 在右侧的操作属性定义界面中选择“开启授权”;
  •  3. 点击“管理授权”进入授权界面;
  •  4. 选择用户/组进行授权
  • 5. 点击确认,即可完成表单操作的管理授权。

图-表单操作授权

...

(三)数据访问控制

在“数据访问控制”中,有批量授权和独立授权2种方式:

...

信息
title注意

如果在上图中步骤3显示”进入独立模式“,说明当前是在批量授权模式,步骤3所指的按钮是一个授权模式开关,显示的模式是点击按钮后要进入的授权模式,而不是当前的授权模式。

对类的授权支持:新增、编辑、查询、删除

对类属性的授权支持:编辑、查询

...

(四)对象访问控制

 1)对象访问授权举例

对象访问授权是在功能授权、类和类属性授权(访问控制)的基础上做更细粒度的授权方式,是将符合某属性规则的对象的集合进行访问控制的方式。结合设备管理的案例,我们希望针对"维修工程师"组,当每一位维修工程师(属性为:engineerOid)登录设备管理系统查询工单时(工单实体类:WorkerOrder),系统只显示该工程师所负责的工单,要实现这样对象访问授权,需要设置一个“工单筛选”属性授权规则为:

...