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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
gbiniek
Regular Visitor

Dynamic Row Level Security DirectQuery

I have successfully implemented RLS in DirectQuery mode utilizing the USERNAME() function however do to the size of the dataset the time it takes to render the report takes too long and makes the report useless.  The main culprit for the time it takes to render is a Item Dimension (millions of items).  These items are flagged by customer.

 

The Role defined for RLS within PowerBI, if I setup a Table Filter over that dimension as such the report is extremely fast.

 

[CustomerAlternateKey] IN { "ABC", "XYZ" }

 

Any thoughts on how to build the rule above to dynamically determine the keys in DirectQuery mode?

 

Thanks!!!

 

Relationship.png

1 REPLY 1
Anonymous
Not applicable

@gbiniek,

In DirectQuery mode, your report performance depends largely on the performance of the underlying data source. ,Moreover, in this case,enabling row-level security can result in substantial changes in performance.

In your scenario, please check the execution plans for your queries when you define different row level security roles, add indices for commonly filtered columns. In addition, check the best practices for connecting via DirectQuery in this official article.

Regards,
Lydia

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

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.