摘要

就数据访问权限而言,阿里巴巴以“被动式授权”为主,你需要什么权限就申请什么权限。但是,在客户交流过程中,我们发现绝大多数企业都是集中式授权,尤其是面向个人的行级权限管控,管理复杂度往往呈几何增长。因此,Quick BI创新了标签式授权机制,支撑IT人员轻松实现千人千面的行级权限管控?小编给大家做个详细介绍!

为什么要做千人千面的标签式授权

不管是敏捷BI ,还是传统BI,甚至定制开发报表,都需要面临个人级别的行级数据访问权限控制。Quick BI作为一个高效数据分析与展现的BI套件,实现了从数据源连接、数据建模、仪表板制作、电子表格制作、到一站式门户搭建的全流程可视化建设能力。V3.0版本之前,Quick BI实现了基于用户/用户组的行级权限管控机制,随着线下大型客户的支撑,客户反馈行级权限管控的过度复杂,工作量太大。

首先,管理复杂度呈几何增长,假设有3000个用户、30个数据集、3个字段需要进行级权限管控,那么需要进行3000303=270000次的行级权限管理操作;

其次,组织调整导致重复性管控,一旦人员变更,针对每个数据集需要重新配置行级权限,造成大量的权限重复配置操作。

标签式授权的价值所在

基于标签式授权,只需配置数据集与用户标签的映射关系,即可实现行级权限管控,从两方面大幅提升了行级授权的管理效率。

一是,极致的授权操作。基于用户/用户组授权方式需要270000次的权限管理操作可以降低到90次。不管是1000人、10000人,还是100000人,授权操作次数也仅需90次,就是这么简单。

二是,超强的适应性。组织结构变更,仅需修改用户的标签信息,行级权限就可以实现平滑迁移,大幅提升行级权限的管理效率。

如何实现标签式授权全流程配置

1、梳理行级权限矩阵

对于一个组织来讲,“行级权限管控”往往跟组织架构管理体系是大同小异的,组织架构管理体系一般有两个部分组成归属部门和岗位,岗位是组织要求个体完成的一项或多项责任以及为此赋予个体的权力的总和。一个人的行级权限,跟归属部门和岗位两种属性有一定的关联性,但并不是完全等同。(例如:一个分公司经理,归属于分公司A,管理分公司业务的同时,又兼顾分公司B的职务。从数据权限的角度来讲,该分公司经理已经具备分公司A、分公司B的部分数据访问权限。)

那么,基于Quick BI的标签式授权,怎么梳理行级权限矩阵呢?如上图所示,按照区域、省份、城市进行“行级权限矩阵”梳理说明:

权限范围说明:example1具备该组织所有数据访问权限;example2具备华东浙江省的数据访问权限;example3具备华东浙江省杭州市的数据访问权限。

用户标签字段可以自定义扩展,扩展列名称以"tag_"开头,例如tag_area、tag_province、tag_city。

,代表所有数据访问权限;如果标签项对应多个权限,采用逗号分隔填写;任一标签项为空,则代表没有任何权限。

2、标签导入和标签值管理

  1. 标签导入

标签导入,一般是在初始化时或组织结构大调整情况下,进行用户的批量标签内容更新。进入组织管理下,点击批量添加组织成员,然后选择批量导入已梳理的“行级权限矩阵”,即可完成行级标签导入操作。如下所示:

2)标签值管理

标签值管理,一般是在个别人员变更的情况下进行数据修订,完成用户行级权限的平滑迁移。点击每个组织成员中的“成员标签”,进行标签值修改。

3)标签授权映射

标签授权,右击某个数据集并点击“行级权限”,进入数据集行级权限设置。开启行级权限,并做好受控字段与标签的映射关系,保存即可完成标签授权操作了。

如何验证标签授权的准确性

1、没有开启行级权限情况下

如下图所示,在没有开启行级权限情况下,订单销量分布覆盖了全国范围。

2、开启行级权限情况下

如下图所示,在没有开启行级权限情况下,订单销量分布覆盖了显示浙江省数据。

我们再来看看执行SQL:自动根据访问者,会在过滤条件中追加区域、省份、城市的数据范围限定


本文作者:supwdl

原文链接

本文为云栖社区原创内容,未经允许不得转载。

Quick BI独创千人千面的行级权限管控机制的更多相关文章

  1. 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题

    导语 发布app后,开发者最头疼的问题就是如何解决交付后的用户侧问题的还原和定位,是业界缺乏一整套系统的解决方案的空白领域,闲鱼技术团队结合自己业务痛点在flutter上提出一套全新的技术思路解决这个 ...

  2. [Python设计模式] 第26章 千人千面,内在共享——享元模式

    github地址:https://github.com/cheesezh/python_design_patterns 背景 有6个客户想做产品展示网站,其中3个想做成天猫商城那样的"电商风 ...

  3. mybatis实现数据行级权限拦截

    最近在做一个测试平台,其中有一个需求是用户只能看到他有权限的项目数据.一开始这个需求只针对用例模块,我直接在sql后面加上了关联项目权限表.后面因为其他模块也需要这个权限判断,故打算把关联sql抽取出 ...

  4. Quick BI取数模型深度剖析

    开发图表最关键的点在于选择准确的图表类型展示准确的数据,而准确的数据往往依赖于一个强大的取数模型,因此设计一个好的取数模型不仅可以解决数据安全的问题,更可以帮助每个访问者高效触达自己想要的数据,开发者 ...

  5. Quick BI的复杂系统为例:那些年,我们一起做过的性能优化

    背景 一直以来,性能都是技术层面不可避开的话题,尤其在中大型复杂项目中.犹如汽车整车性能,追求极速的同时,还要保障舒适性和实用性,而在汽车制造的每个环节.零件整合情况.发动机调校等等,都会最终影响用户 ...

  6. Quick BI助力云上大数据分析---深圳云栖大会

    在3月29日深圳云栖大会的数据分析与可视化专场中,阿里云产品专家陌停对大数据智能分析产品 Quick BI 进行了深入的剖析.大会现场的精彩分享也赢得观众们的一直认可和热烈的反响. 大数据分析之路的挑 ...

  7. Quick BI的宝藏工具——交叉表

    对于普通的表格展示数据,相信大家都非常熟悉了,今天给大家介绍的是BI领域的分析利器-交叉表,这个在BI分析场景中使用占比最多的分析利器.通过交叉表对数据的承载和管理,用户可以一目了然地分析出各种场景指 ...

  8. 当移动数据分析需求遇到Quick BI

    我叫洞幺,是一名大型婚恋网站“我在这等你”的资深老员工,虽然在公司五六年,还在一线搬砖.“我在这等你”成立15年,目前积累注册用户高达2亿多,在我们网站成功牵手的用户达2千多万.目前我们的公司在CEO ...

  9. Quick BI 3.0 - 强大的多维分析表格:交叉表

    写在开头 对于普通的表格展示数据,相信大家都非常熟悉了,今天给大家介绍的是BI领域的分析利器-交叉表,这个在BI分析场景中使用占比最多的分析利器.通过交叉表对数据的承载和管理,用户可以一目了然地分析出 ...

随机推荐

  1. MySQL 普通注册插入优化。

    普通做法是: 用户通过手机号注册.默认是根据这个手机号去用户表里查询,看有没有这个手机号,有那么就提示已注册.否则就执行注册插入数据库操作.这里其实正常注册流程是两次数据库操作的(查询,插入): 优化 ...

  2. 新的开始 | Arthas GitHub Star 破万后的回顾和展望

    一切新的开始,都始于一个里程碑. 2月20日上午,Java 开源诊断工具 Arthas 的 GitHub Star 突破10000,距离开源后的第一个Release 版发布仅 147 天. 从中,我们 ...

  3. Kotlin 委托(2)变量委托是什么、自定义变量委托

    1.委托是什么? 1.1 官网示例 在每个变量委托的实现的背后,Kotlin 编译器都会生成辅助对象并委托给它. 假设委托如下, class C { var prop: Type by MyDeleg ...

  4. css3动画性能优化

    css3的动画简单好用,但是性能方面存在一些问题,很多时候一不留神cpu就已经满了. 现在记下一些常用的技巧,去优化我们的css3的动画. 1. translate3d进行gpu加速 写动画的时候写个 ...

  5. python基--re模块的使用

    正则表达式: 正则表达式本身是一种小型的.高度专业化的编程语言,然而在python中,通过内嵌集成re模块让调用者们可以直接调用来实现正则匹配.正则表达模式被变异成一系列的字节码,然后由C语言编写的 ...

  6. Linux 基础命令3 shell

    echo 显示一行文本 各种展开的实例 波浪线展开 算术表达式展开 支持的运算 奇怪的花括号展开 花括号的..用法 花括号(任选一个)的嵌套 参数展开$符很重要哦(一种展开做另一种的参数) 命令的替换 ...

  7. Promise对象和async函数

    Promise对象 //1开始 function fna(){ console.log('1开始'); var p = new Promise(function(resolve, reject){ / ...

  8. linux之bc命令

    当在脚本中要处理浮点数计算时,就可以使用bc计算器,先看下面的例子 [root@node2 tmp]# cat bc.sh #!/bin/bash # num1=`echo "scale=3 ...

  9. Java IO:字节流与字符流

    https://blog.csdn.net/my_truelove/article/details/53758412 字符和字节之间可以互相转化,中间的参照就是编码方式. 相当于给你一个密码本,按照这 ...

  10. Codeforces 455C

    题目链接 C. Civilization time limit per test 1 second memory limit per test 256 megabytes input standard ...