Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowJuly 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more
So I have these tables
- Main table contains the data and it has a 'security column' set to Allowed.
- RLS is just a regular table with Allowed and Denied
- Employees is a table that is "connected" to our HRIS. The logic column that is implemented on who shall have access based on their job title.
I tried creating a relationship between all the tables and then implement the USERPRINCIPALNAME() on the email of the Employees table, but I don't know if the relationship is off or I am implementing RLS wrong. Relationship between Main Table and RLS on the security column, RLS and Employees (cross filter direction = both) on the logic column.
See image below. Appreciate any help on this. Thank you.
It would help if you shared your RLS DAX I think--
Hello @christinepayton
I tried a few RLS DAX
1. [Email] = USERPRINCIPALNAME()
2. [Email] = USERPRINCIPALNAME() && [Access]="Allowed"
Is your relationship on the allowed/denied column? I'm not sure what the RLS table is doing in your diagram, I think you'd want the RLS rule to be on the Employees table in that case (it'd be acting as the RLS table). This is a bit of an odd way to use it either way, usually you'd use USERPRINCIPALNAME to filter rows with the relationship on an email address field in the fact table.
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
Join Fabric Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.
| User | Count |
|---|---|
| 22 | |
| 22 | |
| 18 | |
| 16 | |
| 13 |
| User | Count |
|---|---|
| 63 | |
| 41 | |
| 40 | |
| 39 | |
| 38 |