数据级次权限的设置

8500
11

xxxl 数据领袖Lv6

发表于2020-7-31 11:37

楼主
本帖最后由 xxxl 于 2020-9-9 16:03 编辑

1.需求描述
  我们在设置用户权限的时候常常有这样的需求,需要用户权限依据具体维度不同来改变权限不同,比如有一个地区维度需要用户A拥有查看地区A的权限,而用户B拥有查看地区B的权限。于是我们就需要用到了数据维级次的权限来完成这样的需求。


2.数据级次权限操作步骤
1)首先我们需要在主题集属性(给主题域属性也可以)中进行配置(这一步也可以不做,具体详解见注意事项);

2)接下来在用户权限中给主题域,主题集,主题表,主题表分组,分析表,分析表分组都可以设置设置数据级次权限,

这里我们还可以选择对不同的维表进行数据级次权限的设置;


3)我们还可以自定义过滤条件。比如希望不同机构下的用户,以及相同机构下不同用户,进入相同的分析表看数据时,参数下拉框看到只属于对应机构用户的数据。
  需要根据机构用户建立一个维表,在主题集或主题域将此维表设置成数据级次维。同时在用户权限中,设置数据级次-自定义过滤条件,
   形如:
   "EDIM$35$18042a93b6024719918db44bbe5cf0fd$行政区划$"+login.id
   按用户对应在维表的维项id
   "EDIM$35$18042a93b6024719918db44bbe5cf0fd$行政区划$"+login.org.id
   按用户所在的机构对应在维表的维项id


3.补充
在设置数据权限的时候,我们还可以利用用户属性来设置,也就是在2.2)之后我们对于已经设好权限的用户在高级中修改一下。

  注意这里参数的写法='EDIM$35$80e6317689a04b7a88f8e272e3108b76$行政区划$'+login.user.email
其中:我们在上一步勾选地区后,系统自动生成的参数值为:
EDIM$35$7eef7e225ca5448192dddf3775290c73$行政区划$000000
  我们需要将其修改为:
='EDIM$35$7eef7e225ca5448192dddf3775290c73$行政区划$'+login.user.email
  示例中使用了login.user.email属性,这是因为示例中用户的机构id与地区维表中的地区id并不匹配。所以我们在用户的邮箱属性中,单独维护了用户所在机构的值进去。
  参数写法的含义是让用户查看数据的权限与login.user.email字段的值相匹配。
  如果客户的机构id和地区维表的值相匹配,那么这里可以写成
='EDIM$35$7eef7e225ca5448192dddf3775290c73$行政区划$'+login.orgid
  用a用户登录系统,计算报表会发现,系统自动按照用户的权限查询出了数据


  如果需要在报表中添加一个行政区划参数,并且要求,参数列表只能显示用户权限范围内的地址,可以在报表中添加“单位级次下拉框”

  再次使用a用户登录系统,查看数据,可以看到行政区划参数的下拉列表中只显示出了“河北省”地区


4.注意事项
最后有几点我们需要注意一下:
1)数据级次生效按照“就近原则“,即越靠近报表优先级越高(报表自身优先级最高,报表分组次之,以此类推),并且找到了数据级次权限就不会在继续找。
2)对于easyolap自身设置数据级次是不生效的。对于easyolap 要设置数据级次的话要在主题集和主题集往上设置 。
3)新建报表时,如果他的主题集设置了数据级次维,就要设置该维的数据级次权限,否则会提示没有数据级次权限。
4)不在主题集设置数据级次维,在权限里设置数据级次维就可以不受限制。
5)如果计算结果显示不明显的,可以查看计算详细信息的sql。
6)补充中在用户属性里设置的"130000"的值是针对层级维设置的,如果使用的是通用维需要设置赋值,需要用到$分割不同层级节点。
例如有如下的通用维


需要取到奥拓则需要写代码值“0E$01D$0101C$010102B”


最近看过此主题的会员

esen_4U34TH4AZW

esen_4TUELCHD9M

leiz

niuyi688988

chenliwei

yzyz

esen_4Y3L5ADO80

西瓜小姐

陈喆

esen_4YNPQEX87K

hand

esen_5090Z6CQA3JN

lingzed

11个回答

只看楼主

小亿 管理员

发表于2020-8-4 14:46

只看该作者

取消 关注该作者的回复

沙发

棒棒的

AlexisP 小试身手Lv3

发表于2020-8-6 10:47

只看该作者

取消 关注该作者的回复

板凳

能不能批量增加,或者通过写入系统表的方式进行数据级次的编辑?

xxxl 数据领袖Lv6

发表于2020-8-6 10:53

只看该作者

取消 关注该作者的回复

地板

AlexisP 发表于 2020-8-6 10:47
能不能批量增加,或者通过写入系统表的方式进行数据级次的编辑?

数据级次-自定义过滤条件,这里可以这样写

AlexisP 小试身手Lv3

发表于2020-8-6 10:57

只看该作者

取消 关注该作者的回复

5#

我的意思是对同一个用户,多张主题表或者分析表进行批量添加,不是同一个主题表多个数据级次的限制

chenying 数据小白Lv1

发表于2020-8-26 17:00

只看该作者

取消 关注该作者的回复

6#

为什么我设置了维过滤,报表只是过滤了查询结果。维下拉里面还是有未设置权限的节点。

xxxl 数据领袖Lv6

发表于2020-8-26 17:06

只看该作者

取消 关注该作者的回复

7#

chenying 发表于 2020-8-26 17:00
为什么我设置了维过滤,报表只是过滤了查询结果。维下拉里面还是有未设置权限的节点。 ...

需要用单位级次下拉呀

chenying 数据小白Lv1

发表于2020-8-26 17:17

只看该作者

取消 关注该作者的回复

8#

xxxl 发表于 2020-8-26 17:06
需要用单位级次下拉呀

单位级次下拉能用维表吗

xxxl 数据领袖Lv6

发表于2020-8-26 17:19

只看该作者

取消 关注该作者的回复

9#

chenying 发表于 2020-8-26 17:17
单位级次下拉能用维表吗

是的,如果不想做数据级次下拉可以试试普通维做数据维级次效果看这个帖子https://bbs.esensoft.com/thread-137016-1-1.html

chenying 数据小白Lv1

发表于2020-8-26 17:21

只看该作者

取消 关注该作者的回复

10#

xxxl 发表于 2020-8-26 17:19
是的,如果不想做数据级次下拉可以试试普通维做数据维级次效果看这个帖子https://bbs.esensoft.com/threa ...

嗯嗯。我看到了。本来准备试试你这个帖子说的这个方法。但是你说的单位级次下拉好像不能用维表。只能手动设置节点

wenwenwen 初学数据Lv2

发表于2022-7-19 16:43

只看该作者

取消 关注该作者的回复

11#

AlexisP 发表于 2020-8-6 10:57
我的意思是对同一个用户,多张主题表或者分析表进行批量添加,不是同一个主题表多个数据级次的限制 ...

请问这个问题解决了吗,有没有批量添加的方法?

上一页12下一页共2页

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号