Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi,
I'm migrating reports from a data visualization tool to Power BI. To give you some context: I have more than 10 reports that are updated monthly. These models have RLS implemented, but the RLS needs to be updated daily. What would be your suggestion to achieve the best possible solution (performance, cost, etc.)? Should I use notebooks? If so, how can I set it up so that the entire semantic model is refreshed monthly, and only the user access table is refreshed daily? Is this possible?
Any help is welcome.
Solved! Go to Solution.
Hi. Well, it's tricky. For the single table refresh you can do it with Data Pipelines or by code in a notebook:
- Using pipelines: https://learn.microsoft.com/en-us/fabric/data-factory/semantic-model-refresh-activity
- Using enhaced api (only semantic models with capacity): https://fabric.guru/refreshing-individual-tables-and-partitions-with-semantic-link
Regarding effort for modifying manually the RLS flow it might be different depending your deploy:
- Static RLS. You can assign rules to security groups. Then you could use the UI or a PowerShell script to modify the security groups assigned to the roles created at the model.
- Dynamic RLS: the best approach to reduce effort would be trying to use a single tool for the two places you should modify. When it's dynamic you probably have a table assigning people to logic besides the security group. You could check if python, powershell or any other would let you modify both things in a single script.
Just in case let me share a dynamic rls example: https://blog.ladataweb.com.ar/post/652895563673649152/powerbi-seguridad-de-filas-rls-con-regla
Once you have the script, it could run in Azure Functions or Runbooks at Azure. If you already have a Fabric capacity, then it could run in a notebook or user data function to take adventage of the license.
I hope that helps
Happy to help!
Hi @bdpr_95 ,
May I ask if you have resolved this issue? Please let us know if you have any further issues, we are happy to help.
Thank you.
Hi @bdpr_95 ,
We’d like to follow up regarding the recent concern. Kindly confirm whether the issue has been resolved, or if further assistance is still required. We are available to support you and are committed to helping you reach a resolution.
Best Regards,
Chaithra E.
Hi @bdpr_95 ,
Thank you @ibarrau, @FBergamaschi for your input.
I hope the information provided is helpful.I wanted to check whether you were able to resolve the issue with the provided solutions.Please let us know if you need any further assistance.
Thank you.
Hi. Well, it's tricky. For the single table refresh you can do it with Data Pipelines or by code in a notebook:
- Using pipelines: https://learn.microsoft.com/en-us/fabric/data-factory/semantic-model-refresh-activity
- Using enhaced api (only semantic models with capacity): https://fabric.guru/refreshing-individual-tables-and-partitions-with-semantic-link
Regarding effort for modifying manually the RLS flow it might be different depending your deploy:
- Static RLS. You can assign rules to security groups. Then you could use the UI or a PowerShell script to modify the security groups assigned to the roles created at the model.
- Dynamic RLS: the best approach to reduce effort would be trying to use a single tool for the two places you should modify. When it's dynamic you probably have a table assigning people to logic besides the security group. You could check if python, powershell or any other would let you modify both things in a single script.
Just in case let me share a dynamic rls example: https://blog.ladataweb.com.ar/post/652895563673649152/powerbi-seguridad-de-filas-rls-con-regla
Once you have the script, it could run in Azure Functions or Runbooks at Azure. If you already have a Fabric capacity, then it could run in a notebook or user data function to take adventage of the license.
I hope that helps
Happy to help!
Unless you are ready for pretty complex scenarios, the standard refresh involves all tables so you need a daily refresh
If this helped, please consider giving kudos and mark as a solution
@mein replies or I'll lose your thread
Want to check your DAX skills? Answer my biweekly DAX challenges on the kubisco Linkedin page
Consider voting this Power BI idea
Francesco Bergamaschi
MBA, M.Eng, M.Econ, Professor of BI
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!