The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredCompete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.
Hi all,
Just a question from a product perspective.
We create custom software as a SaaS, each customer of the software has its own database to which the cloud platform connects. (Customer data is strictly separated due to privacy impact)
We would like to embed power bi reports into the web application in order for each customer to access it. The report should take the software's user management into account as well, since based on the user it will be allowed to see more or less tabs within the report and the corresponding data.
We would like to keep a data warehouse (fabric) or semantic model with the reporting data per customer (to keep in separated as well)
Role-based access can be used to determine which of the data within the semantic model can be seen by the logged in user of the web application.
Questions
In general is this an advisable way of working or are there better methods/alternatives for this scenario?
Thank you!
Yes indeed, they will al have their own data warehouse/semenatic model per customer.
So with automation, it means we should create a report, a semantic model per customer. Does it also means we need a entra ID per customer as well to secure it and integrate this in the web app?
And how would you manage the user security level?
Thank you for your reply!
Based on your requirements where you said you would need a database per customer, I would then follow the same way in fabric. You can still apply Row Level Security when using a Warehouse on either the SQL End Point or on the semantic model depending on where you want to surface the data.
I think this would also depend on your level of automation. Ideally if you have got 100 identical data sources which then have 100 identical reports you could look at automation of the reports and semantic model?
Especially if the customers data has to be in a seperate database it would then need its own semantic model or data warehouse?