BI权限规则

1. 资源权限

1.1 一般资源

资源权限相对来说是实体权限,就是在系统资源树上能看得见的节点。我们在分配资源权限的时候就是限制用户能看到哪些节点,不能看到哪些节点。

用户的资源权限有三个来源:用户自身所分配的资源权限;继承所在机构的资源权限;继承所拥有的角色的资源权限。

如果一个用户同时具备上述三种来源,最终体现在该用户上的资源权限是三者的并集,即:用户资源权限=用户自身资源+所在机构的资源+拥有的角色的资源 (三者并集)。


1.2 门户资源

对于门户资源,同一般资源一样,权限是取并集,具有不同入口分配的所有门户的访问权限。由于现在的门户系统中只会显示单个门户,但是在权限系统中可以授权多个门户,这里有个优先级别的问题。

例如在机构中分配了门户a的权限,在角色中分配了门户b的权限,在用户自身分配了门户c的权限,那么最终用户登录的时候进入哪个门户呢?

某用户同时拥有的门户a、门户b、门户c,哪一个最后更新,用户就进入最近更新的那个门户。

这个规则是在没有在个人设置中设置门户的前提下,如果一个用户需要固定进入自己指定的一个门户,那么就到"个人设置/外观与主题/门户设置"中指定默认门户,该设置可以让一个门户的优先级提到最高。


1.3 报表和easyolap权限如何分配?

约定:设置了数据级次,必须分配数据级次权限才能计算,否则无数据权限。下面所述情况是在没有数据级次情况下分配的规则。

报表模板权限分配:只要分配查看权限即可。不需要分配该报表涉及到的主题表和维表的查看权限。

easyolap权限分配:首先要分配easyolap保存结果的权限,然后还需要分配该拖着分析所用的虚拟主题(或者主题表)的"即席分析"权限。


1.4 分配门户权限的时候,勾选"计算所有报表"

如果在分配门户权限的时候勾选了"计算所有报表",在这种情况下,资源数上没有分配任何报表资源权限,用户登录进来也能计算该门户所有报表,包括easyolap报表。

2. 数据权限

数据权限的分配有四层:主题域、主题集、分组、报表

数据权限的分配有三处:机构、角色、用户

数据权限的规则与资源权限的规则完全不同,我们以四个数据权限分配的步骤来了解规则:

第一步

首先来看第一层,主题域,分别在机构角色和用户上定义主题域节点的数据权限:机构定义110100、角色定义110000、自身定义110101那么最后在生成sql的时候:

select sum(a.ZZC) as ZZC0

from FACT_SRZC a

where ((a.XZQH) = "110101" or (a.XZQH) like "11%" or (a.XZQH) like "1101%")

即:机构角色用户的主题域节点都分配了数据权限,最终都起作用了,而且数据权限之间是交集,解析成sql就是"机构数据权限&角色数据权限&用户数据权限"。


第二步:

在保留主题域数据权限的基础上,再分别到机构角色和用户的主题集节点上分配数据权限:机构定义120000、角色定义120100、用户自身定义120101,那么最后生成的sql:

select sum(a.ZZC) as ZZC0

from FACT_SRZC a

where ((a.XZQH) = "120101" or (a.XZQH) like "1201%" or (a.XZQH) like "12%")

即:忽略了主题域节点上的数据权限,优先使用主题集上的数据权限,而且三者取交集。


第三步:

在保留主题域和主题集数据权限的基础上,再分别到机构角色和用户上对报表分组节点分配数据权限:机构定义130000、角色定义130100、用户自身定义130101,那么最后生成的sql:

select sum(a.ZSR) as A2 

from FACT_SRZC a 

where (a.XZQH = "130101" or a.XZQH like "1301%" or a.XZQH like "13%") 

即:忽略了主题域和主题集节点上的数据权限,优先使用报表分组节点上的数据权限,而且三者取交集。


第四步:

在保留主题域、主题集、报表分组数据权限的基础上,再分别到机构角色和用户上对报表节点分配数据权限:机构定义310000、角色定义310100、用户自身定义310101,那么最后生成的sql:

select sum(a.ZSR) as A2 

from FACT_SRZC a 

where (a.XZQH = "310101" or a.XZQH like "3101%" or a.XZQH like "31%") 

即:忽略了主题域、主题集、报表分组节点上的数据权限,优先使用报表节点上的数据权限,而且三者取交集。

小结:数据权限采用就近原则

报表数据数据权限》报表分组数据权限》主题集数据权限》主题域数据权限


2.1数据权限—数据级次维

如果系统指定了数据级次维,那么规则跟一般的数据权限相同。也符合数据权限的优先规则,并且也是机构、角色和用户的数据级次同时生效并取交集(生成sql用and连接)。

那么数据级次维的数据权限跟普通维的数据权限有什么不同之处呢? 

数据级次维权限:必须分配,如果不设置数据级次维的数据权限,则默认为false,就没有数据的访问权限。

普通维数据权限:可以不设置,且不设置则默认为true,能计算出全部数据。


3. 总结

资源权限:机构、角色、用户取并集,即机构资源+角色资源+用户资源;

数据权限:主题域、主题集、报表分组、报表,采用就近原则,即报表》报表分组》主题集》主题域;

机构、角色、用户取交集,即机构and角色and用户。

附件列表

2

文档内容仅供参考
如果您需要解决具体问题,还可以登陆亿信社区
在提问求助板块提问,30分钟内帮您解决问题

如果您认为本词条还有待完善,请编辑

上一篇数据级次维

下一篇主表、子表参数联动

请先登录

创建词条

词条信息

admin
admin

超级管理员|词条创建者

1477

浏览次数:1852 次

编辑次数:8次 历史版本

更新时间:2019-12-24