【问题标题】:Query Active Directory using DAX使用 DAX 查询 Active Directory
【发布时间】:2020-03-16 13:48:53
【问题描述】:

鉴于我的表格模型,我正在尝试编写一个改变行为的度量,具体取决于有效用户所属的角色。这不是传统的行级安全性 (RLS),因为我不想按角色进行过滤;只需执行 if-else 即可。

我在https://community.powerbi.com/t5/Desktop/DAX-Expression-For-Role-Level-Security-Using-DirectQuery/td-p/489699 遇到了以下解决方案,我相信它会起作用,但我更喜欢查询活动目录以查看用户是否属于所述角色,而不是模型上的另一个表。

我还看到了一些关于从 Power BI 的活动目录中获取属性的文章(即https://community.powerbi.com/t5/Desktop/How-to-leverage-Active-Directory-to-filter-the-data-in-Power-BI/td-p/140479),但没有任何文章公开正在使用的 DAX。

底线,如果我可以在 DAX 中获取角色名称或调用函数来检查用户是否在角色中,我会很高兴(假设性能没有受到影响)。

编辑:我应该补充一点,我目前正在利用三个功能之一来获取用户。 USERNAME()USEROBJECTID()USERPRINCIPALNAME()

【问题讨论】:

    标签: ssas dax ssas-tabular row-level-security


    【解决方案1】:

    我最终放弃了使用 Active Directory,并做了其他人都在做的事情(如我的问题中发布的链接之一所示)。

    作为参考,这里有一个说明解决方案的 sn-p:

    EVALUATE
    SUMMARIZECOLUMNS (
        "Some Measure",
        IF (
            LOOKUPVALUE('My User'[UsePrivilegedValue], [Name], USERNAME()),
            SUM('Some Fact'[PrivilegedValue]),
            SUM('Some Fact'[OtherValue])
        )
    )
    

    【讨论】:

      猜你喜欢
      • 2010-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多