数据权限分配怎么设置_常见的数据库管理系统 *** 作方式

数据权限分配怎么设置_常见的数据库管理系统 *** 作方式,第1张

数据权限分配怎么设置_常见的数据库管理系统 *** 作方式 数据安全,是每家公司在进行数据建设时,都会重点考虑的问题。

如何避免人员调整所带来的数据规则变化,减少数据控制阶段的工作量及增加严谨性,是用户的真实诉求和痛点。

永洪BI在权限管理层面,将用户的相关信息封装成参数,可直接应用在数据预处理和报表制作阶段,不仅满足了大量场景下数据权限管控,更在一定程度上规避了因“人员调整”导致的数据规则手工修改情况。

本次,我们就一个双重数据规则限制场景,详细讲解相关 *** 作及实现效果。

一、权限要求场景1、员工登录BI系统,①根据所属岗位(A岗/B岗… …),确定岗位属性;②根据员工所属部门(部门A/部门B… …),确定部门属性;通过双重限制的权限条件实现数据过滤;2、若A员工为A岗、部门A,则可以看到表1 数据表中,“A岗”列中值为“部门A”的数据记录;3、若A员工为B岗、部门B,则可以看到表1 数据表中,“B岗”列中值为“部门B”的数据记录。

➤表1 数据表项目日期事业线A岗B岗CRM商机号PMS项目编号主项目名称项目类型项目经理客户经理2021/1/1事业线A部门A部门BCRM001PMS010甲优质A类A张三2021/2/1事业线A部门B部门BCRM002PMS020乙优质A类AAA李四2021/3/1事业线A部门C部门ACRM003PMS030丙良好B类A张三2021/4/1事业线A部门C部门ACRM004PMS040丁良好B类B李四2021/5/1事业线B部门B部门ACRM005PMS050戊劣质C类AAA张三2021/6/1事业线B部门A部门BCRM006PMS060己劣质C类B李四2021/7/1事业线B部门B部门BCRM007PMS070庚良好B类AA张三2021/8/1事业线C部门C部门ACRM008PMS080辛劣质C类A李四2021/9/1事业线C部门A部门CCRM009PMS090壬优质A类B张三2021/10/1事业线C部门A部门ACRM010PMS100癸良好B类A李四二、场景实现方式1、数据导入将表1 数据表中的数据导入到数据集中,图1使用的是创建数据集的SQL数据集。

(本示例采用mysql5.7.18版本的数据库)图1 数据表导入2、报告制作根据表1 数据表制作一维表的报告,图2使用的是制作报告图表组件的表。

图2 一维表制作3、用户配置新增4个用户、3个分组、2个角色,并配置权限关系,表2使用的是认证授权导出的用户信息。

➤表2 用户信息admin1权限配置,配置所有模块读写权限,用于设定后续的权限过滤。

3个测试用户(test1、test2、test3)权限配置,配置相关的的模块及 *** 作权限即可,如图3所示。

图3使用的是角色权限信息的配置结果。

图3 权限配置4、权限过滤admin1登录BI,通过数据集的SQL编辑,实现权限配置逻辑。

图4是变更数据集“表1 数据集”的查询语句。

逻辑实现:用户登录后,识别角色,判断通过哪一列进行过滤,再识别分组,判断过滤列的筛选值。

SQL语句:select * from date1where 1=0 ORcasewhen ?{_ROLES_}=”A岗” then A岗 in (?{_GROUPS_})when ?{_ROLES_}=”B岗” then B岗 in (?{_GROUPS_})else 1=0end图4 逻辑实现三、场景实现效果1、用户test1(A岗;部门A)登录,结果如图5所示。

图5 test1登录结果2、用户test2(B岗;部门B)登录,结果如图6所示。

图6 test2登录结果3、用户test3(A岗;部门C)登录,结果如图7所示。

图7 test3登录结果该场景实现了对不同权限用户的数据过滤,核心逻辑是:根据第一个属性值,获取判断条件列;根据第二个属性值,获取条件列的筛选结果值;双重限制下,实现数据记录的条件过滤。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/660395.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-04-18
下一篇2022-04-18

发表评论

登录后才能评论

评论列表(0条)

    保存