1

我尝试使用动态 RLS 运行多维项目。我使用了一个示例来实现它。

在我的示例场景中,我有一个如下所示的幼崽:

在此处输入图像描述

我尝试为用户权限的测试结果编写正确的 MDX 查询。

SELECT {[Measures].[Point Transaction Count],[Measures].[Amount],[Measures].[Balance]} ON 0,
NonEmpty ([Club].[Club].[Club].MEMBERS,([Users].[User Name].&[[MyDomain]\a.ghasemi],[Measures].[User Permission Count])) ON 1
FROM [DynamicPointTransaction]
GO
积分交易计数 数量 平衡
测试俱乐部 30 34151 99210

这个结果是正确的,当我更改用户名时,在 SSMS 查询编辑器中运行良好。

现在,我在动态 RLS 中的问题,当我尝试在 VS 浏览器中设置查询以动态使用用户时,我发现权限维度出现错误。

“俱乐部”维度中的“俱乐部”属性生成的维度安全表达式无效。

我通过 DimesionData 创建了一个角色,其中允许的成员集如下:

NonEmpty (
[Club].[Club Id].[Club Id].Members,
(
StrToMember ("[Users].[User Name].&[" + UserName () + "]"),
[Measures].[User Permission Count]
)
)

添加成员资格,添加对 cub 和维度的读取权限。

当使用角色浏览或用户引发此错误时:

选择用户

错误

角色和用户之间没有区别...错误是稳定的。When choice Admin users, I don't have any error.

4

0 回答 0