The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
We have a SaaS site up that is currently running on a SQL server database. At the moment, we create customer dashboards based on the campaigns that we create for them within our site. These customer dashboards are distributed via a public link to the customer - this means the customer consumes the report from the link (outside of the site) and the report itself has to have preset filters for each customers (as the underlying data model is for all customers). This data is currently refreshed via the enterprise gateway.
We REALLY want to embed these customer dashboards into our site where the customers can see only their data within these reports that are embedded. How do we get here? Do we need to shift our database to an Azure SQL database and then use Power BI embedded? The documentation regarding this is confusing me now, as it appears Power BI premium may have replaced this and we don't need the data on an Azure SQL database?
Also, we need to have RLS as we want single reports that filter for only what is available to the customer. I understand we need to surface the filter value within the javascript onsite but I was reading a post where it stated that RLS wasn't ready - is this the case?
What are we needing to do to move to embedded?
@WESTi wrote:
We have a SaaS site up that is currently running on a SQL server database. At the moment, we create customer dashboards based on the campaigns that we create for them within our site. These customer dashboards are distributed via a public link to the customer - this means the customer consumes the report from the link (outside of the site) and the report itself has to have preset filters for each customers (as the underlying data model is for all customers). This data is currently refreshed via the enterprise gateway.
We REALLY want to embed these customer dashboards into our site where the customers can see only their data within these reports that are embedded. How do we get here? Do we need to shift our database to an Azure SQL database and then use Power BI embedded? The documentation regarding this is confusing me now, as it appears Power BI premium may have replaced this and we don't need the data on an Azure SQL database?
Also, we need to have RLS as we want single reports that filter for only what is available to the customer. I understand we need to surface the filter value within the javascript onsite but I was reading a post where it stated that RLS wasn't ready - is this the case?
What are we needing to do to move to embedded?
First thing to clear the confusion. The legency Power BI workspace collections on Azure is being deprecated, the replacement is Power BI Embedded capacity-based SKUs which supports all datasources that supported in Power BI Service.
As to RLS, the new Power BI Embedd only supports RLS on reports. For dashboards, RLS is not supported at this moment, see Applying user and role to an embed token.
The GenerateToken API accepts a list of identities with indication of the relevant datasets. Currently only one identity can be provided. Support for multiple datasets will be added, for dashboard embedding, in the future. For RLS to work, you will need to pass the following as part of the identity.
By the way, what are the public links of your dashboards? As far as I know, publish to web only supports reports.