在我的项目中,我必须根据维度属性应用安全性。 我认为解释我的场景的最好方法是举个例子,如果你需要更多信息,请向我索要,我很乐意告诉你它是否能帮我找到解决方案。
我有一些主要方面,dimcustomer,dimseller,fact,data和geographic。 事实表与dimseller id有关,dimcustomer与基于一个dimseller特定属性(CNPJ)的dimseller相关(我没有描述的另一个维度以相同的方式相关)。
所以我的目标是根据dimseller CNPJ应用角色安全性,因此当与该卖家相关的用户尝试浏览数据时,他将被允许仅查看与其卖家CNPJ相关的数据。
表示例:
DIM Seller: DIM Customer FactTable
id name cnpj id name dimseller.cnpj dimseller.id dimcustomerid measure
1 ME 1234 1 guest1 1234 1 1 50,00
2 you 5678 2 guest2 5678 2 2 100,00
因此,如果我以ME身份登录,我将能够获得客户guest1,其中一个售出的产品售价为50美元。
明白我的观点?
这样做的最佳方式是什么?
现在我正在考虑以下指南:Claim Authentication with dynamic dimension security,但这样我应该按属性定义属性。
有没有办法可以定义这种安全需求?我可以使用sql语句轻松过滤数据,但我没有想法如何在ssas中应用这种安全性。
无论如何,谢谢你们!
答案 0 :(得分:0)
要在维度中应用安全性,您需要使用roles
。对于每个角色,您可以指定多维数据集/维度中该角色可用的元素。所以,你要做的就是创建CNPJ的角色,只能查看他们的CNPJ。