美文网首页BI学习笔记
BI技巧丨权限管控

BI技巧丨权限管控

作者: Fabric丨白茶 | 来源:发表于2022-01-22 12:37 被阅读0次

BI可视化在实施过程中,用户最关注的点有哪些?

这个问题相信很多小伙伴都遇到过,或者被其他人问过,白茶总结了一下用户比较在意的几个点:安全性、自助性、权限管控、易用性、兼容性、扩展性、便捷性、反应速度等。

本期呢,我们来聊一聊关于权限管控那些事。

PowerBI截至目前为止,可以实现的权限管控包含三方面:页面权限、行权限、列权限

那么这三者在PowerBI中是如何实现的呢?别急,跟着白茶的思路走。

先来看看本期的案例数据:

案例数据并不是很复杂,共计三张表,分别是权限表、国家表以及案例数据。

将其导入到PowerBI中,我们对权限表进行一下简单的处理。

这是在PowerQuery中关于权限表的截图,大家可以看到页面权限和国家权限采用逗号分割的方式进行存储。

我们需要对这两列进行一下拆分处理。

选择“页面权限”,选择“拆分列”,选择按“分隔符拆分”。

选择“自定义分隔符”,输入文本间的间隔,选择高级选项,选择拆分为“行”。

结果如下:

同理,根据上面的操作,我们将“行权限”进行拆分。

这样做的好处在于,报表正式投入使用后,用户只需要维护Excel文件中的权限配置,PowerBI就会在后台自动执行拆分,进行报表权限控制。

选择关闭并应用,模型如下图。

这里注意一下,权限表不需要与其他表建立模型关系。

白茶根据案例数据,简单的做了如下几个报表。

首页:作为页面权限管控使用,使用字段为权限表中的页面权限字段。

可视化页面:用来展示列权限。

明细页面与地图页面:展示页面权限与行权限使用。

到这里,我们的准备工作基本完成,我们来看一下,三者在PowerBI中的实现方式。

页面权限:

1.报表页面命名与隐藏。

这里大家需要注意,报表页面的名称,一定要与Excel中的文本相对应,不然会导航失败。

当我们配置完成后,除了首页之外的页面,均要设置为隐藏;发布时页面要停留在首页。

2.页面权限配置:选择“管理角色”,选择创建一个角色“页面权限”,在“权限表”输入以下代码。

[邮箱]=USERNAME()

3.页面设置:切片器字段选择权限表中的“页面权限”字段。

添加如下度量值:

页面选择 =
SELECTEDVALUE ( '权限表'[页面权限] )

添加按钮,在“操作”设置中选择类型为“页导航”,点击“fx” 按钮,选择字段值为“页面选择”。

到这里,页面权限配置完成,我们点击面板上的“通过以下身份查看”。

其他用户这里面我们可以输入用户的邮箱进行测试。

我们输入BB测试一下:

可以看到,当我们输入BB邮箱时,切片器会自动的根据用户的权限进行页面筛选。

行权限(RLS):

行权限这个往往代表用户所能看到的数据范围。

1.添加如下度量值:

国家权限 =
VAR CountryAccess =
CALCULATETABLE ( VALUES ( '权限表'[行权限] ), '权限表'[邮箱] = USERNAME () )
RETURN
SELECTEDVALUE ( '国家表'[CountryZH] ) IN CountryAccess

2.在管理角色页面添加新角色如下。

代码如下:

[国家权限]=True()

这样我们能看到的数据范围,就会根据用户的权限进行筛选。

我们在报表页面进行一下简单的查看。

列权限(OLS):

列权限管控,通常代表用户可以看到不同的列。

在PowerBI中,有两种方式可以实现:

A.Tabular Editor的方式。

B.DAX的方式。

这两种方式,A的方式其实白茶不太建议大家去使用。

举个例子:Tabular Editor可以控制某一物理列根据用户权限是否显示,那么这一列,制作报表的过程中,就需要慎用,一旦使用了,某些无权限的用户打开报表时,报表页面就会有部分可视化图表报错,这对用户的体验来说,非常的差。

B的方式,是白茶比较推荐大家的,将列权限写进DAX中,这样更加的灵活。

模拟场景:

若用户是“管理层”,则图表显示“Budget”数据,若用户是“执行层”,则图表显示“Amount”数据。

编写如下DAX:

列权限 =
VAR RoleAccess =
CALCULATETABLE ( VALUES ( '权限表'[角色] ), '权限表'[邮箱] = USERNAME () )
RETURN
IF ( RoleAccess = "管理层", SUM ( '案例数据'[Budget] ), SUM ( '案例数据'[Amount] ) )

将其放入到可视化中,我们来看一下效果。

DAX控制列权限的方式,最佳实践是与SSAS搭配使用,这样可以在Tabular中将列进行隐藏,只呈现DAX给用户,实现真正的OLS管控。

注意事项:

1.权限控制可以在本地部署和云上Servers使用,本机免费版仅可以通过角色进行查看。

2.云上Servers使用最低许可证需要为Pro账号。

3.云上Servers需要将被分享用户添加到对应工作区,权限为“查看器”。且需要在同一组织中。

4.需要对数据集安全性进行设置,将用户邮箱添加到角色里面。

(白茶:文件在知识星球)

这里是白茶,一个PowerBI的初学者。


相关文章

  • BI技巧丨权限管控

    BI可视化在实施过程中,用户最关注的点有哪些? 这个问题相信很多小伙伴都遇到过,或者被其他人问过,白茶总结了一下用...

  • BI技巧丨权限轴

    BOSS:(愁眉苦脸)白茶呢?同事:(推一推)醒醒,白茶,BOSS喊你!白茶:(一脸懵)咋了,老板?BOSS:(一...

  • BI技巧丨权限下载

    BOSS:白茶,问你个事,就是报表的下载权限,这个能控制不?白茶:可以啊,老板,工作区限制成员身份就可以啊。BOS...

  • vsphere如何利用权限实现行为管控

    如何利用权限实现行为管控 如何利用权限实现行为管控 1 vsphere 中权限总览1.1 角色1.2 用户/用户组...

  • JeeSite | 访问控制权限

    在各种后台系统中都会涉及到权限的管控,从功能权限的管控,到数据权限的管控,都是为了让系统的在使用的过程中更加的安全...

  • 企业级 BI plus 敏捷自助分析,IBM 分析产品新一代之

    摘要:将敏捷 BI 融入到企业级 BI 建设中,寻求 IT 管控和业务自助分析平衡,这是 IBM Cognos A...

  • gitlab用户,组,项目权限管控

    前言:gitlab上的权限管控是非常重要的,尤其是很多研发人员开发一个项目。这个是我总结的权限管控。 1.这个是创...

  • 大工业

    行业特点: 成本管控 成本分析 公司架构:规模大小 业务布局 管理与分工 权限 核算与科目 成本管控 成本分...

  • 数据库平台规划

    数据库平台能力 补充:安全管控权限申请→权限审核→权限下放→权限回收 数据库集中管理 业务需求→产品&版本&网段服...

  • spring security 访问403 Forbidden

    spring security 配置了访问权限管控 然后前端登陆,访问需要权限的地址时出现 403 Forbidd...

网友评论

    本文标题:BI技巧丨权限管控

    本文链接:https://www.haomeiwen.com/subject/nxufhrtx.html