精细权限控制

权限规则

DMP权限体系以用户为中心,经由角色实现权限控制;通过在角色中,对不同数据集设置不同的筛选配置,实现对数据集,报告和应用门户的精细权限控制。

用户权限

1、用户有2种方式获得角色的权限

  • 将角色分配给用户:该用户拥有角色的权限;

用户权限

  • 将角色分配给用户组:该用户组下的用户,都拥有角色的权限;

用户权限

需要注意的是:如果用户有多个角色,则用户权限是取每个角色权限的最大并集,如角色A中设置数据集A可查看全集团数据,角色B中设置数据集A仅可查看深圳公司数据,将这两个角色都赋予用户后,则用户可以看到全集团的数据。

2、报告中数据来源于数据集,所以只需要对数据集做数据权限控制即可满足需求

配置入口:

  • 访问控制-角色管理中,添加角色;
  • 选择“创建数据集”功能,找到需要受控的数据集;
  • 勾选“查看权限”设置,点击“筛选配置”,进入配置界面;

3、用户、用户组、角色间关系如下

用户权限

4、用户层级来源于ERP中的表mybusinessunit,组织架构同步规则如下

SELECT
   buguid AS id,
   parentguid AS parent_id,
   buname AS NAME,
   '' AS CODE,
   LEVEL,
   butype AS type,
CASE

     WHEN butype = 0
     AND LEVEL = 0 THEN '集团' 
     WHEN butype = 0 
     AND LEVEL = 1 THEN '区域' 
     WHEN butype = 0 
     AND LEVEL = 2 THEN '公司' 
     WHEN butype = 1 THEN '部门' 
     WHEN butype = 2 
     OR butype = 3 THEN '项目'
     ELSE '其他' END AS hierarchy,
  'ERP' AS account_mode 
FROM mybusinessunit

数据筛选方式

数据集权限有2种控制:1.与字段值相关的行列权限;2.与用户组织层级相关的用户属性关联权限。

1.行列权限

选择某一数据集,进行权限的筛选设置;首先选择 “行列权限” ,添加受限字段,该字段为数据集中的任意字段;

以字符串类型的字段为例,当字段权限选择“所有”,则该角色下的用户在数据集和报告中,对该字段均不可见;当字段权限选择“部分”,则该角色下的用户在数据集和报告中,仅能查看到设定的字段值。

行列权限

2.关联用户属性

用户属性关联是将数据集字段与用户组织层级关联的操作,而用户组织层级在不同的系统模式下来源不同:

ERP模式:
明源ERP中每一个组织都含有层级,而该组织下的用户也将携带该层级,在ERP组织架构同步到DMP系统中后,这些层级形成用户的组织层级。

通用模式:
导入组织架构时,导入文件包含“层级”列,当组织架构和用户都导入之后,不同组织下的用户将携带该组织的层级,形成用户的组织层级

用户的组织层级可在 访问控制-用户管理 中查看:

ERP用户组织属性

有了用户的组织属性之后,在数据集权限的筛选设置中,选择 “关联用户属性” ,添加一条记录;在左侧中,选择需要关联的数据集字段,在右侧中,选择该角色下该数据集字段需要关联的用户组织层级:

关联用户属性

设置完成后,该角色下的用户,在数据集,报告和应用门户中仅能查看到对应层级下,设定数据集字段值=用户所属组织值 的数据。

如以下用户,用户组织属于 华南区域总部和珠海公司,层级属于 区域和公司,按上面的设置(区域=区域),则该用户登陆之后,在设置的数据集【营销-签约认购数据按公司】中,仅能查看到 区域=华南区域总部 的数据。

关联用户属性示例

该控制生效的前提条件

数据集中做数据筛选的字段,对应的字段值,必须和ERP组织架构中的值完全一致;如:用户A在ERP中属于“广州公司”,数据集中使用“公司”字段做数据筛选,在数据集中,公司的表达必须是“广州公司”“深圳公司”等,如果字段值的表达是“广州”、“GZ01”等都无法筛选出数据。

用户权限

results matching ""

    No results matching ""