查询多维数据集时未选择维度时,SSAS维度数据权限不应用于度量

查询多维数据集时未选择维度时,SSAS维度数据权限不应用于度量,ssas,cube,olap-cube,ssas-2012,Ssas,Cube,Olap Cube,Ssas 2012,我是SSAS的新手,所以如果我的问题有一个明确的答案,请原谅我-我今天做了很多研究,自己找不到答案 我正在尝试将维度数据安全性(在我创建的SSAS DB角色中)应用于我的SSAS 2012多维数据集。本质上,我试图做的是,分配给我创建的角色的用户不应该能够看到特定维度成员的任何数据 因此,当我在SSDT(SQL Server Data Tools或Visual Studio with BI add-on)中编辑多维数据集时,我会转到角色-->打开角色-->转到维度数据选项卡-->在下拉列表中选择

我是SSAS的新手,所以如果我的问题有一个明确的答案,请原谅我-我今天做了很多研究,自己找不到答案

我正在尝试将维度数据安全性(在我创建的SSAS DB角色中)应用于我的SSAS 2012多维数据集。本质上,我试图做的是,分配给我创建的角色的用户不应该能够看到特定维度成员的任何数据

因此,当我在SSDT(SQL Server Data Tools或Visual Studio with BI add-on)中编辑多维数据集时,我会转到角色-->打开角色-->转到维度数据选项卡-->在下拉列表中选择维度-->取消勾选不允许角色中的用户查看的维度成员)

设置完毕后,我通过部署多维数据集来测试角色,然后在SSDT中打开多维数据集-->转到“浏览器”选项卡-->单击“更改用户”-->选择我创建的角色

我的测试结果如下:

如果我选择了我限制的维度和任何度量值,数据将正确显示,即仅显示我允许的维度成员,每个维度成员的度量值将正确显示。 但是,如果我没有选择受限维度(例如,仅选择一个度量值),则度量值的总数不正确,即它似乎不排除为角色隐藏的维度成员。

我错过了什么


我在网上看到一些帖子/博客谈论“动态SSAS安全性”,这似乎涉及到将单个Windows登录映射到允许它们看到的事实行(这涉及到在数据源中创建额外的隐藏表),但我无法理解,如果SSAS角色也应该这样做,为什么我需要这样做?我不需要在用户级别定义安全性-用户被分组到active directory组中,因此我希望将角色映射到相关的广告组,这应该也可以,不是吗?

您必须选中“高级”选项卡中的“启用可视总计”复选框。在我们的网站上查看有关此(以及其他SSAS身份验证事项)的完整教程: