1. 概述
数据的管理是FineBI最为重要的内容之一,在企业中往往是由超级管理员和各业务部门的次级管理员一同负责数据体系的建设和维护。FineBI从数据体系管理的角度可以分为公共数据、仪表板目录的管理机制,以及数据权限的控制流程及实施方案,在此篇中对
权限分配策略、权限实施方案以及数据行列权限方案进行了介绍。
权限作为企业推广BI过程中必不可少但又较为复杂的功能,本文提出的想法和实践是从各客户身上总结而来,可作为实际落地方案的参考。
2. 权限分配策略
2.1 BI权限体系
1)权限作用项
作用对象 | 权限项 | 说明 |
---|---|---|
数据连接 | 使用 | 开启此权限后,用户在添加db/sql表时,可以使用该数据连接来获取对应表的数据 |
管理(依赖于分级授权) | 开启此权限后,用户可以对具有权限的数据连接进行编辑、删除、复制 | |
文件夹 | 使用 | 开启对应文件夹使用权限后用户可在创建仪表板、自助数据集时使用该文件夹数据。文件夹中新增的数据都默认有相应使用权限。不能在文件夹中添加任何表,包括基础数据表和自助数据集,也不能对文件夹进行重命名、删除、移动分组操作。 |
管理 | 使用权限的功能均可使用。开启对应文件夹使用权限后用户可在文件夹中添加表,包括基础表(数据分析用户仅能创建 Excel 数据集,数据处理用户可添加任何基础表)和自助数据集,可对文件夹进行重命名、删除操作。可对文件夹下的基础表进行编辑操作,但除管理员外,对于不是用户自己创建的自助数据集,则无法进行编辑操作。 | |
数据表 | (6.0)组件数据查看权限 | 6.0将组件数据查看权限独立出来,作为一个权限项,开启该权限而不开启使用权限时,可以做到“用户能正常查看仪表板的数据,而不能够另外用此数据进行分析" |
(6.0)管理权限 | 6.0将数据集的管理权限做了重新设计,开启此权限后,无论用户是否是数据集的创建者,都可以编辑该数据集,包括修改步骤/重命名/删除等 | |
使用 | 开启此权限时,用户可以查看数据集数据,并可以基于其做进一步的分析 | |
行权限 | 在开启使用权限的基础上,BI可以对特定的数据表进行配置,只展示某些行给特定的对象 | |
列权限 | 在开启使用权限的基础上,BI可以对特定的数据表进行配置,只展示某些列给特定的对象 | |
平台目录 | 查看 | 支持对整个文件夹或者单个仪表板配置,开启此权限时,用户可在平台目录中看到文件夹/仪表板的入口,但需注意,能否看到里面的数据详情,还是取决于数据集的权限 |
导出 | 在查看的基础上,FineBl支持配置对某些对象来说,仪表板是不可导出的 | |
单个仪表板(依赖于模板认证) | 查看和导出 | 除了将仪表板挂载到目录之外,FineBI也支持直接打开仪表板的预览链接查看此时若想控制查看和导出权限,就需要配置模板认证功能。 |
2)权限分配对象
FineBI 数据权限的分配支持按照部门、职务、角色、用户来进行。
其中,用户权限优先级大于其他权限载体的权限,只要给用户单独配置过权限(即节点右侧有小黄人/小灰人)则用户对该节点的权限不再继承其部门职务角色,按照自身配置的生效。
在部门职务和角色上配置的权限,最后是以并集逻辑生效,表现为:
用户a同时属于部门a-职务1、角色a,给不同的权限载体(职务、角色)配置同一权限实体(数据集)的不同权限类型,最终权限类型取并集。
用户同时属于多个权限载体,如用户a同时属于部门a-职务1、角色a,给不同的权限载体配置不同权限实体的不同权限类型,最终权限个数取并集。
2.2 统一分配流程
统一分配流程即指定一名系统管理员,进行所有的权限分发,其过程应当包括:
1)初始化授权:在系统搭建和推广过程中,管理员会添加很多数据集和仪表板,此时应当按照权限调研的结果,进行初始化的权限分配。
2)权限申请和授权:随着系统的使用,用户的权限可能逐渐无法满足自身的分析诉求,此时应当开放一个权限申请入口,形成一个审批流程,进行权限开放。
2.3 分级授权策略
在中大型企业中,BI往往作为一个基础设施提供,除了统一的超级管理员之外,日常业务中还需要将各种分配权限的权限开放给各个业务的接口人(也就是次管)。在BI权限体系中,我们通过分级授权功能来支持这一场景,详情请参考:次级管理员的权限范围。
注意:在次级管理员进行日常授权的过程中,超管应当对他们的行为做出提前的规范和常规的审计。
3. 权限实施方案
3.1 实施方案
3.2 实战案例
某公司下属有10个部门,共有100多张数据表,在搭建权限体系时,基于前期的信息收集,从中找出了两个典型部门,先行搭建权限体系。
其中A部门的数据特征:有3种不同的岗位级别,分别是组长、组员、实习生。其中组长可以看到本部门的所有数据,且平时不会做数据分析,组员可以看到大部分数据,并需要做数据分析,实习生只能看到很少部分的数据,且不需要作分析。
B部门的数据特征:大家都是一个岗位,对本部门的所有数据都清楚,但是在工作流程上属于不同的阶段。「业务人员」只需要查看数据分析结果,「分析人员」负责将已经处理好的明细数据进行二次开发,得到业务人员想看的结果,“开发人员”负责本部门数据的引入和规范化,使其符合数据标准,供分析人员使用。
且AB部门有共用一个数据运营人员-张三,张三对AB部门的数据了如指掌,清楚地知道哪些数据是敏感的,哪些数据可以对外,哪些数据可以开放给所有人查看。
基于这些数据特征,该公司设计了如此一张权限逻辑表。
权限项从「大」到「小」分为:
①授权权限
②增删改(管理)权限
③使用权限
④查看权限
文件夹 | 文件夹 | 文件夹 | A部门(按照职位分配权限) | B部门(按照角色分配权限) | 公共角色 | ||||
组长 | 组员 | 实习生 | XX角色业务人员 | 分析人员 | 开发人员 | XX角色数据运营人员 | |||
A部门 | 人事 | XX文件夹 | ④ | ① | |||||
XX文件夹 | ④ | ③ | ④ | ① | |||||
XX文件夹 | ④ | ③ | ④ | ① | |||||
XX文件夹 | ④ | ③ | ① | ||||||
B部门 | ERP | XX文件夹 | ④ | ③ | ② | ① | |||
XX文件夹 | ④ | ③ | ② | ① | |||||
XX文件夹 | ④ | ③ | ② | ① | |||||
XX文件夹 | ④ | ③ | ② | ① |
4. 数据行列权限方案
在企业的数据应用中,经常存在这样的场景:对于同一个表,希望不同的人访问时只能看到自己有权限的数据,比如本部门或者本业务线的某些数据行,或者是某些特定的数据字段只对部分用户开放(例如只有负责人能看见薪资,其他人只能看到基本的个人信息)。针对这个场景,FineBI拥有行列权限的配置能力。
具体的配置过程,详情请参考:分配数据表中部分数据权限。
具体的配置案例,详情请参考:
另外对于直连数据,我们推荐使用系统用户名参数、部门参数等来控制,详情请参考:使用系统参数分配权限。