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

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes! Register now.

Reply
Vick143
Frequent Visitor

Row Level Security With USERPRINCIPALNAME()

Hi Everyone,

We have one master dataset in which we use EmailAddress = USERPRINCIPALNAME() for our row level security. There are multiple reports using our master dataset and we have to create one more report using the master dataset but we can not have security on that report(All users should be able to see full data). Is there a way to create a switch where we can enable and disable security on the report? I tried following formula but it did not work. 

 

[EmailAddress] = IF(ISFILTERED(Security_tbl[Status]),"Global.User.com, USERPRINCIPALNAME())

 

Security_tbl is stand alone table and it has only one column 'Status' and one value "off", my idea was to bring it to filter on all pages on my report and filter it so users can see full data for this particuler report. Global.User.com is dummy email and I added it on ProfitCenterUser file and it is given full access. 

 

Thank you very much in advance for looking into it 

 

Vick143_2-1679063602033.png

 

Vick143_1-1679063243863.png

 

 

1 REPLY 1
lbendlin
Super User
Super User

The standard approach is to add a shadow copy of your fact tables to the data model, with sensitive information removed/aggregated away and RLS not applied.

Helpful resources

Announcements
September Power BI Update Carousel

Power BI Monthly Update - September 2025

Check out the September 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.