Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
juanjoseblancob
Frequent Visitor

Slicer values with row level security

Hi!

 

I have the following issue. My report is basically driven by a slicer with all customer names, and this works fine for those of us with access to the full data set since we choose customers on the slicer and see the data for each.

 

Now, I want to share the report with actual customers, each of which should obviously only see their data. I can essentially achieve this with Row Level Security, BUT I am facing the following: the customers slicer does not change to have as the only option the one value in the customers table that I allow each role to see, but actually it retains the "last" value the report had for the slicer (although it´s not a valid value for that role!).

 

Example to explain:

- The last value the slicer had was Customer Y (but with full access I can see all other customers in the slicer)

- I change to a role that can only see Customer X... and the charts are all empty because the slicer remains set on Customer Y, whose data this user has no access to. If I display the values in the slicer, I can see it´s only Customer X, but as a user experience is clunky (plus they see other client´s name as they go into the report).

 

By the way, I can experience exactly the same behaviour if I use URL filters (and filter by Customer X); the report is filtered to only data from Customer X, but the slicer keeps the "last value" it had.

 

Any option to "initialize" the slicer properly?

 

Thanks in advance!

7 REPLIES 7
v-yulgu-msft
Employee
Employee

Hi @juanjoseblancob,

 

Please check whether this porblem exists in desktop. If yes, please re-create the RLS and check again.

1.PNG

 

I cannot reproduce the same problem on my side. Please test my sample .pbix file on your side to see if issue persists.

 

Best regards,

Yuliana Gu

Community Support Team _ Yuliana Gu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

hi, 


on this file happens, if you select X and then the selec the role 2 you see the X and the Y, if you deselect the x it disappear but the need is they happens when the role change.

Anotación 2019-09-24 151019.png

 

 

@v-yulgu-msft 

 

regards

Hi Yuliana.

 

Thanks a lot for your reply, and for the sample to test. Indeed, the problem does happen in the very simple file you sent. The key aspect to test it, though, is the following:

 

  1. Select a customer on the slicer (for instance, select X) -> this is the key step.
  2. Then change to a role that doesn´t see X (for instance, change to Role 2 which can only see Y)

You will see how the slicer still keeps X! If you don´t have anything preselected on the slicer (that is, if you don´t do step 1), then all works fine... but that´s not my scenario 😞

 

Thanks in advance for your follow up.

 

Juan

Hi again! I could finally get back to my PowerBI community account after all the mess with associating non-organizational and organizational accounts 😞

 

Were you able to replicate this Yuliana? Should I report it as a bug?

 

Cheers,

 

Juan

Hi @juanjoseblancob,

 

 Please review the response from PG:

 

By Design. RLS causes a Table-level filter based on the role, it does not update any slicer visuals. It is an "invisible" filter applied to every query that is generated.

 

Best regards,

Yuliana Gu

Community Support Team _ Yuliana Gu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

I'm coming to this conversation late, but I'm hoping someone can enlighten me on how to work around it.

In our case, similar to the original poster, we have a subset of data that is responsive via RLS to the authenticated user. There is a single-select slicer that lets the user choose subset data within the RLS data they have access to. However, when the PBIX is published and shared, whatever option was selected at the time is saved as the default.

Client X (given the earlier example) should not be aware of Client Y's data subsets.

So, if this is by design, how do I make sure that a slicer gets refreshed before being displayed to the end-user? The only solution I have found so far is to turn off single-select, and clear all the checkboxes before publishing the PBIX. This is not preferable, since only one item should be chosen at a time.

Is there any "on-load" functionality, or ANY functionality that would force a refresh of the slicer and visuals after RLS is applied?

 

Thanks,

R. Gooch

Hi! The approach I use is to add a guiding dummy row that all RLS's have access to that say for example "Please, select a customer". 

I select that option on the slicer before saving and publishing the report. 

 

I know this is an old question, but I came across it while looking for answers to a different question about slicers. Figured I'd leave a workaround for you  🙂

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors