BI 数据级权限解决方案
关键词: 用户 权限 设置 数据 解决方案 Cube ┊ 分类:Mssql 教程┊ 投搞 ┊ 我要评论
BI 数据分析是目前企业的热门应用,而对企业来说,权限控制是非常重要的,尤其是
作为决策用的企业报表。目前基于微软 SQL Server 体系的 BI 架构为 Integration Services
+ Analysis Service + Reporting Services,Integration Services 和 Analysis 都属于应用后
台的服务,不会在用户前端展现,其权限控制体系不在我们这篇文章的讨论范围内(但是
实现数据级权限控制,需要 Analysis Services 的参与)。而对于前端展示用的企业报表,
权限控制体系分为 2 种:报表级权限和数据级权限。报表级权限较为简单,主要用于控制
谁能够看这个报表;数据级权限则比较复杂了,任何人看同一张报表,报表上的数据只能
是他有权限查看的数据。简单说,就是总经理看到的数据和经理看到的数据是不一样的,
虽然他们在看同一张报表。比较报表级权限和数据级权限,会发现如果实现了数据级权限
的控制,那么企业报表是否需要进行权限控制已经不再重要(当然,为了界面友好性,还
是应该控制下的)。
这篇文章主要就是讲述基于 SQL Server 架构的 BI 数据级权限的解决方案,这也是我
给一个德国大型跨国企业客户实施其 BI 项目中,对方非常重视的一个功能。这里先简单介
绍下这个客户和项目,出于保密要求,我把该客户叫做 Customer S(简称 CS,呵呵,不
是那个游戏哦)。
CS 项目前端采用 Sharepoint,后台采用 SQL Server,主要分析客户 S 的销售数据。
CS 的组织结构分为部门、区域;部门和区域是相互交叉的;某个部门的总部人员能够看
到全国所有区域的数据;而区域员工则只能看到该区域的数据了。用户能够查看的数据权
限,需要在网页上可以进行配置。这就是客户对数据级权限的要求。
针对这些需求,数据级权限解决方案采用如下架构: