Ed Freeman on 11 May 2020 20:24:49
When generating a token for Power BI Embedded for a non-Analysis Services dataset, there currently isn't a dedicated way to pass additional information to refine the data returned when the report is rendered. Essentially, an equivalent of CUSTOMDATA () would be welcome.
Currently, you can use the "username" field to pass in a custom string and then parse the result in the RLS rules in Power BI Desktop, but this isn't ideal, as I doubt this is the "username" field's intended use. It would be great if there were a way to pass additional context as part of the Embed Request.
e.g. Defining an attribute in the embed request such as "additionalContext": "Country=UK", which can get picked up by a DAX function (say, ADDITIONALCONTEXT () ) in Power BI Desktop, to use to further filter the data model using RLS.
- Comments (5)
RE: Equivalent of CUSTOMDATA () for non-Analysis Services datasets
This idea is absolutly needed!
RE: Equivalent of CUSTOMDATA () for non-Analysis Services datasets
This is almost a neccesity.
RE: Equivalent of CUSTOMDATA () for non-Analysis Services datasets
This idea is definitely needed, for the reasons stated by posters here. In my case, I want to pass at least 3 independent variables to the Power BI dataset through the embed token to securely filter the data depending on the app context into which the report is embedded.
RE: Equivalent of CUSTOMDATA () for non-Analysis Services datasets
This idea is really helpful.
RE: Equivalent of CUSTOMDATA () for non-Analysis Services datasets
This would help solve the gap of doing REAL dynamic row-level security in PowerBI. Every proposed suggestion for RLS in PowerBI requires you to either enter roles into a table, enter roles into a pbix, or enter roles into the PowerBI web app. It is absolutely critical for people attempting to embed PowerBI on behalf of their customers (programatically) to be able to do RLS without any manually entered data, and without any re-publishing of reports.