Forum Discussion
How to prevent access to underlying data - while Publishing power BI reports to public
- 1 year ago
Hi SuriPowerBI ,
Thanks for reaching out to Microsoft Fabric Community,When using Publish to Web in Power BI, there are no built-in controls to restrict access to the underlying dataset. Even if visuals only display aggregated values, the entire data model behind the report is exposed. Users can potentially extract data using browser tools or third-party methods, which poses a risk when working with sensitive or detailed records.
Recommended Approach:
1. Create a summary-only semantic model
Build a separate Power BI dataset that includes only the aggregated data you intend to publish. For example, summaries by age group, condition, geography, etc. with any identifiable or granular data excluded. This way, even if someone accesses the dataset behind the report, they only see public-level information.2. Automate the summary logic in Power Query
To avoid creating multiple tables manually (e.g. 12 conditions × 8 summary tables), use Power Query functions or parameterized queries. These can generate the required summaries dynamically and reduce duplication across conditions.3. Avoid using detailed datasets with Publish to Web
Using a semantic model does not prevent data access if the model includes sensitive fields. Once published to web, the report and its model are publicly accessible, regardless of any hidden fields or visuals.
If you need more control but still want to share insights externally, consider:Power BI Embedded with authentication
Secure embed or app sharing using AAD-based access
These options allow broader access while maintaining data protection.
Hope this helps. Please reach out for further assistance.
If this post helps, then please consider to Accept as the solution to help the other members find it more quickly and a kudos would be appreciated.Thank you.
don't want public to access any underlying data other than what they can see in the visuals.
You are publishing to web. There are no guardrails whatsover. If you don't want the underlying data to leak, don't include the underlying data.
Create a semantic model that ONLY contains the summary data.
Thank you for your kind response lbendlin
The dataset has so many subsets - for example Cancer by age group, ethnicity,deprivation,differnt gepgraphies ; like cancer my dataset has 12+ conditions ; I need to end-up creating around 8 summary tables for 1 condtion (12*8) in power Query. Is there any method you advice
- lbendlin1 year ago
Super User
Either accept that they can access the underlying data, or create separate reports that are only based on the summary data they are allowed to access.