Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Dear all
I need to resolve a request that all users should see all shops and their performance on one benchmarking page in the report, but for the rest of the report, the RLS should be applied, and Area Managers should see only shops in their area.
The RLS is applied on shop dimension like this:
D_Workplace[Area Manager Name] IN
SELECTCOLUMNS( FILTER( D_Employee, D_Employee[Email] = USERPRINCIPALNAME( ) ), "@name", D_Employee[Full Name] )
The dimension is connected to fact table through a standard star schema. To fulfil the requirements I thought about adding second copy of the shop dimension without any RLS and us this one only on the benchmarking page. But even if I tried to disable the original relationship using:
CROSSFILTER( D_Workplace[wrkpl_key], F_FinanceProfitability[wrkpl_key], NONE )
in the measure used on benchmarking page still the RLS is applied.
Is there any way how to disable the RLS in the measure or did I anything wrong?
Thanks a lot
Solved! Go to Solution.
No, you can't disable RLS from within a measure. What you could do is build a summary table of your data at the granularity you need and then link all dimensions except shop and then link a duplicate of the shop dimension without RLS, as you suggested.
For example, if you only need to show data at the month granularity you could create a summary table like
Sales Summary =
ADDCOLUMNS (
SUMMARIZE (
Sales,
'Product'[Product Key],
'Shop'[Shop Key],
'Date'[Year Month]
),
"Sales Value", [Sales Amount]
)
You would then link Date, Product and new duplicate of Shop to this summary table and write the measures you need.
You could go down to any granularity in the summary, but the more columns you add the bigger the table will get.
No, you can't disable RLS from within a measure. What you could do is build a summary table of your data at the granularity you need and then link all dimensions except shop and then link a duplicate of the shop dimension without RLS, as you suggested.
For example, if you only need to show data at the month granularity you could create a summary table like
Sales Summary =
ADDCOLUMNS (
SUMMARIZE (
Sales,
'Product'[Product Key],
'Shop'[Shop Key],
'Date'[Year Month]
),
"Sales Value", [Sales Amount]
)
You would then link Date, Product and new duplicate of Shop to this summary table and write the measures you need.
You could go down to any granularity in the summary, but the more columns you add the bigger the table will get.
Measures can not override RLS ... which is a good thing otherwise RLS would not be secure.
Are you users confussed. It sounds like they dont undestand the difference between RLS and Filters.
Filters can alow users to slice and dice
RLS secures data for example restricting Area Managers to only see their shops.
But you could grant Directors access to all shops, and they could slice and dice which shops they which to see on different reports.
Please click the [accept solution] and the thumbs up buttons, thank yoi
Check out the July 2025 Power BI update to learn about new features.
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
User | Count |
---|---|
17 | |
8 | |
7 | |
7 | |
6 |
User | Count |
---|---|
23 | |
11 | |
10 | |
9 | |
8 |