The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hi! We are currently stuck with RLS in a case where would need to embed paginated report for customers. We got the normal reports working in app using the customdata() value. We have app-owns-data scenario and the users are all in the same security group but they are separated with user.1.(customernumber) and we use the customernumber to filter the data depending by the customer. We have now tried many ways but we can't see any data coming to the report. Including this method = https://learn.microsoft.com/en-us/power-bi/developer/embedded/paginated-reports-row-level-security .
Is there any way to apply this RLS for paginated report in our scenario?
Thank you very much!
Solved! Go to Solution.
Hey @Erkko,
You’re on the right track – paginated RLS works differently than normal PBIX reports. A few key things to check:
Use @UserID or =User!UserID / =User!CustomData inside your dataset queries or filters. For embedded, only CustomData() works, so make sure you pass the correct value in the embed token.
Set up the filter at dataset level (SQL or SSAS query) – paginated reports don’t use Power BI model RLS.
Verify the embed token actually carries CustomData (you can test by showing it in a textbox with =User!CustomData).
Avoid relying on security groups – for paginated, the row filtering must happen through the query logic tied to that CustomData.
Debug step: First hardcode a value in your dataset query to confirm data comes through, then swap in =User!CustomData.
This way, each customer’s data is filtered correctly when you embed the report.
Fixed? ✓ Mark it • Share it • Help others!
Best Regards,
Jainesh Poojara | Power BI Developer
Hey @Erkko,
You’re on the right track – paginated RLS works differently than normal PBIX reports. A few key things to check:
Use @UserID or =User!UserID / =User!CustomData inside your dataset queries or filters. For embedded, only CustomData() works, so make sure you pass the correct value in the embed token.
Set up the filter at dataset level (SQL or SSAS query) – paginated reports don’t use Power BI model RLS.
Verify the embed token actually carries CustomData (you can test by showing it in a textbox with =User!CustomData).
Avoid relying on security groups – for paginated, the row filtering must happen through the query logic tied to that CustomData.
Debug step: First hardcode a value in your dataset query to confirm data comes through, then swap in =User!CustomData.
This way, each customer’s data is filtered correctly when you embed the report.
Fixed? ✓ Mark it • Share it • Help others!
Best Regards,
Jainesh Poojara | Power BI Developer
Hi!
We got it working using your instructions but we started to test it further. We got it working also using only role in the datamodel. We have a role named "Example" using Table1[Username] = USERNAME() in Power BI. We pass from the code the UI Username value to the role and it filters data also automatically. Is this also a correct and secure way to do this?
Thanks for the help!