This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
Hi all,
So I've got a question in regards to dynamic row level security based on data in Power BI.
I've got my Power BI connected to a SharePoint online list for hours worked that requires manager approval. In the list there is a column for Manager which includes the manager GUID of our Organization O365 instance. I want to add row level security so that when I disaply in a table visual a list of all the staff members and their worked hours. It will only show the relevant records based on the Manager who's viewing the list (using the Manager GUID to determine what they see).
For example if I'm a manager and my GUID is "123" and there's the following 2 rows for hours worked by staff
In theory because my GUID is 123 and I view the Power BI report I should only be able to see the first row of data and not the second one. I'm not sure how O365 and Row Level Security would work and whether I can specify a dynamic Row Level Security based on matching the manager GUID on the dataset with the person who views the data.
Solved! Go to Solution.
Hi all,
So I've done a quick read of http://angryanalyticsblog.azurewebsites.net/index.php/2016/12/27/dynamic-rls-via-hierarchy-in-power-...
Still not too sure how to get the heirarchy RLS working. I've attached a sample PBIX file with the data structure I'm currently working with. Basically I've got a Sales Order table linked to a Department Table as a many to one. You can see in the SalesOrder table there is a name and email for both the person who made the sale (the Test 1, 3, etc.) and the manager name and email (manager 1, 2, 3 etc). The RLS needs to be set so that the rows in the table visual in my PBIX file is only visible to the person who've made the sale and the manager linked to the sales order.
Download my sample PBIX file here
I see I can use the =USERPRINCIPALNAME() DAX to dynamically set the report so that it's filtered by the email of whoever logs into the Power BI. How do I need to structure the data table so that the manager heirarchy would work?
Any help would be greatly appreciated. Thanks all!
Kind regards,
Mike
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 39 | |
| 28 | |
| 27 | |
| 22 | |
| 18 |
| User | Count |
|---|---|
| 68 | |
| 37 | |
| 32 | |
| 26 | |
| 25 |