gpt4 book ai didi

security - SSAS OLAP 立方体动态安全。一个角色的多个维度

转载 作者:行者123 更新时间:2023-12-04 03:18:15 24 4
gpt4 key购买 nike

设置多维数据集后,我被要求使用用户表和他们可以看到的数据来添加动态安全性。

问题是我必须考虑 3 个不同的维度。我决定在计数时使用带有 noneEmpty 函数的事实表。

NonEmpty([Dimension].[Hierarchy].members,
([Measures].[Allowed Count],
[Users].[User].&[UserName]
)
)

设置角色后,我得到的结果如下:

昏暗1 |昏暗2 |昏暗的

1 |一个| 300

1 |一个| 320

1 |一个| 340

1 |乙 | 300

1 |乙 | 320

1 |乙 |第340章

它应该在哪里:

昏暗1 |昏暗2 |昏暗的

1 |一个| 300

1 |一个 | 320

1 |乙 |第340章

允许用户访问的数据存储在表中

用户名 | Dim1Key |昏暗键 | Dim3Key

层次结构就像每个 Dim1 包含每种类型的 Dim2,Dim2 又包含每种类型的 Dim3。

并且用户只能访问 Dim1 中 Dim2 中 Dim3 的给定成员。

有没有办法在 MDX 中连接这些维度,所以最后每个 Dim 都只有各自的值

更新:

经过一些研究,我得到了这个查询:

SELECT [Measures].[CC Count] ON 0,

NonEmpty(
(
NonEmpty((Dim1.children),
([Measures].[CC Count],
[Users].[User].&[userName]
))
,
NonEmpty((Dim2.children),
([Measures].[CC Count],
[Users].[User].&[userName]
)),
NonEmpty((Dim3.children),
([Measures].[CC Count],
[Users].[User].&[userName]
))
)
,([Measures].[CC Count],
[Users].[User].&[userName]
))
ON 1
FROM [Cost Center]

这给了我想要的结果,但我无法将其放入 Role 的 Dimensiom Data 中。有没有办法改变它?

最佳答案

请尝试创建一个新的隐藏维度,其中键属性具有 key1、key2 和 key3 的组合键。您将不得不选择一些 NameColumn,但这并不重要。所以选择 key1 作为名称。除了维度键之外,您不需要维度上的任何内容。

在多维数据集设计器的维度使用中,确保将此新维度连接到所有事实表和提供 CC 计数度量的安全度量组。

然后仅在该维度上创建基于角色的安全性。用户将能够看到所有维度的所有成员,但这个新的复合键维度将确保他们看不到他们不应该看到的事实行。这应该比单元安全的替代方案表现得更好。

关于security - SSAS OLAP 立方体动态安全。一个角色的多个维度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39703055/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com