Forum Discussion
Embedding Power BI report into SharePoint, share for external users and apply RLS
Hey everyone,
I'm having this interesting problem. I hope you know a little bit more to help me with it.
Scenario:
We want to publish a couple of reports inside a SharePoint page for our customers. But of course, they should see just their own information, so we must apply the necessary RLS rules to achieve this.
I didn't have any problems with the external users. They can see the entire reports with the information for all the customers, inside PBI Services and the SharePoint page as well.
Problem:
The problem is when I try to apply an RLS rule for these external users. The RLS rules work when the user has a "Viewer" role ("role" in the workspace). But if I do that, the external user can access the report but not the data (They will see just titles without any visualization).
If a try to give the external user a "Contributor" role, can see data inside the report but the RLS doesn't work.
Question:
- Is there a way to apply RLS for external users?
- Can I share a report for my customers without duplicate my reports once per each customer?
Thanks!
HI Anonymous ,,
Yes, you can embedd a repot and have RLS and it work for external users. BUT, you have to be consistent throughout the entire method of display - if you have a wide-open SharePoint site (anybody can get there) and then you embed a report, how are you using RLS? Are you using the userid that is signed into the SharePoint site? etc. etc. So, if you have a SharePoint site that has security on it, then the RLS will naturally work better - this is proven out if you embedd a report to a site that is exposed to the internet , the RLS is ignored because you have given internet permission.
This article will help with some understanding about this:
https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security
and this one about security for external use:
1 Reply
- collinq
Super User
HI Anonymous ,,
Yes, you can embedd a repot and have RLS and it work for external users. BUT, you have to be consistent throughout the entire method of display - if you have a wide-open SharePoint site (anybody can get there) and then you embed a report, how are you using RLS? Are you using the userid that is signed into the SharePoint site? etc. etc. So, if you have a SharePoint site that has security on it, then the RLS will naturally work better - this is proven out if you embedd a report to a site that is exposed to the internet , the RLS is ignored because you have given internet permission.
This article will help with some understanding about this:
https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security
and this one about security for external use: