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

Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now

Reply
ruicaio
Frequent Visitor

Power BI Security Roles

Hi.

I don’t know if there is a bug or if it is supposed to work like that.

If I create a Security Role over a table inside Power Bi Desktop that filters the data it works well. I only see the records that pass the DAX filter expression from that Role.

What I think that is not supposed to happen is that if in the model I create a “Virtual Table” using DAX (VTable = Filter(TABLE; TABLE[Field] = “something”),where TABLE is the table where the SECURITY role is applied, the result pass over the security that is applied to the TABLE.

 

Example here

2 ACCEPTED SOLUTIONS
Daniil
Kudo Kingpin
Kudo Kingpin

This is by design. If you try to use RLS in calculated columns or calculated tables, it will not work as you expect, because RLS is applied at query time, and calculated columns and calculated tables are evaluated at data refresh time, which is before any query time.

View solution in original post

v-qiuyu-msft
Community Support
Community Support

Hi @ruicaio,

 

It is supposed to work like that. The calculated table vTABLE = FILTER('TABLE','TABLE'[Column1] <> "VALUE1") data will not change until the TABLE raw data change. As the Security role is filtering table TABLE and there is no relationship between table TABLE and vTABLE, vTABLE values will not be affected by the role.

 

If you want the vTABLE to be filtered by this Securoty role as well, you need to create a relationship between these two tables. 

 

q3.PNGq4.PNG

 

 

Best Regards,
Qiuyun Yu 

Community Support Team _ Qiuyun Yu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

2 REPLIES 2
v-qiuyu-msft
Community Support
Community Support

Hi @ruicaio,

 

It is supposed to work like that. The calculated table vTABLE = FILTER('TABLE','TABLE'[Column1] <> "VALUE1") data will not change until the TABLE raw data change. As the Security role is filtering table TABLE and there is no relationship between table TABLE and vTABLE, vTABLE values will not be affected by the role.

 

If you want the vTABLE to be filtered by this Securoty role as well, you need to create a relationship between these two tables. 

 

q3.PNGq4.PNG

 

 

Best Regards,
Qiuyun Yu 

Community Support Team _ Qiuyun Yu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Daniil
Kudo Kingpin
Kudo Kingpin

This is by design. If you try to use RLS in calculated columns or calculated tables, it will not work as you expect, because RLS is applied at query time, and calculated columns and calculated tables are evaluated at data refresh time, which is before any query time.

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

February Power BI Update Carousel

Power BI Monthly Update - February 2026

Check out the February 2026 Power BI update to learn about new features.