Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Python | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Python | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA | Python |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA | Python
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Databricks | Power Apps | Power Automate |
Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables | Power Apps | Power Automate
Power BI | Power Apps | Power Automate | SQL | VBA | Python | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables
Power BI | Power Apps | Power Automate | SQL | VBA | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Power BI teams in the Netherlands are hitting the same wall: reports that mix HR data, financials and external benchmarks, with stakeholders asking a simple question you can’t easily answer — who can actually see what, and where does this data live? Add the sovereignty debate and you suddenly need defensible, auditable answers, not just a tidy workspace structure.
This article walks through a realistic setup where Power BI, Purview and sensitivity labels work together to control exposure, trace lineage and support sovereignty decisions, with enough detail that you can implement and troubleshoot it in your own tenant.
You manage a Power BI tenant for a mid-sized group with:
The security pain points:
We’ll tighten this environment around three pillars:
Power BI uses Microsoft Information Protection sensitivity labels. These are defined in the Microsoft Purview compliance portal (formerly Microsoft 365 compliance center) and then applied in Power BI Desktop and the service.
As of late 2026, you can apply sensitivity labels to:
In Power BI Desktop you can set the label at the file level; when you publish, the label flows to the corresponding report and dataset in the service.
Key behaviours you should rely on:
.pbix files (where allowed)What labels do not do by themselves:
Labels are classification and policy hooks. Access is still controlled by roles, RLS/OLS and tenant settings.
Most tenants start with labels designed for documents: Public, Internal, Confidential, Highly Confidential. For Power BI, that’s usually too coarse.
For our finance + HR scenario, a workable pattern is:
.pbix restrictionsYou configure these behaviours in the label policy in the compliance portal, not in Power BI directly. Power BI then enforces them when users interact with labelled artefacts.
For our shared finance + HR model:
.pbix in Power BI Desktop.Confidential – HR for the file.Result:
Confidential – HR (assuming label inheritance is enabled in the tenant).In the workspace, you might create:
For the finance-only report:
Confidential – Financial.Now you have:
Confidential – HR (because it contains HR tables)Confidential – FinancialRestricted – HR IdentifiableEach report’s export behaviour follows its own label, even though they share the same dataset.
Sensitivity labels are about classification and policy; RLS/OLS are about data slices. You need both.
For the shared dataset:
Example: RLS role definitions in the model using Power BI Desktop model view.
-- Example of a simple RLS role filter expression (in Power BI Desktop model view)
-- HR role: can see all employees
[EmployeeAccess] = TRUE()
-- Finance role: cannot see HR data
[EmployeeAccess] = FALSE()
In practice you’d implement [EmployeeAccess] as a Boolean column or measure based on user identity and business rules. OLS is configured separately (for example, using Tabular Editor or the model view in Power BI) to hide HR tables from the Finance role completely.
How this interacts with labels:
For sovereignty discussions, you can now say:
Microsoft Purview gives you:
For our scenario, the governance team wants to answer:
At a high level, you:
Once scans run, Purview can show lineage like:
Purview itself doesn’t move data, but it helps you see:
For sovereignty debates, this matters because:
If you use Power BI Premium or Fabric capacities, capacity region choice is critical. Purview lineage plus capacity metadata gives you a defensible story for where data is processed.
With labels and Purview in place, you still need to control how people reach the data.
For the Finance & HR workspace, enumerate access paths:
For each dataset:
Restricted – HR Identifiable, ensure:
Power BI’s View as role feature lets you validate RLS behaviour; Purview gives you lineage; labels enforce export and classification. Together they give you a credible answer to “who can see what”.
A few tenant-level settings affect how well your sensitivity and Purview strategy works.
Key ones to review:
These settings don’t override label policies, but they can narrow or widen what users are allowed to do even before labels apply.
If this feels like a lot, don’t try to retrofit the whole tenant in one go. Pick one dataset where sovereignty and sensitivity are non-negotiable — usually HR or detailed payroll.
For that dataset:
.pbix downloads using label policies and tenant settings.Once you can clearly explain who can see what, through which path, and in which region for that dataset, you have a pattern you can repeat for the rest of your Power BI estate.
This article reflects how Dutch and EU-based teams are tightening Power BI governance around sensitivity labels, Purview lineage and access paths to answer concrete sovereignty and data exposure questions in mixed HR and finance environments.
Professionals who want to apply these patterns to their own data can explore Excelgoodies' Power BI Reporting programme - taught live by instructors, with certification awarded once a real project is running at work.
Insights compiled through ongoing industry research and discussions within the Excelgoodies Analytics Community.
Power BI
New
Next Batches Now Live
Power BI
SQL
Power Apps
Power Automate
Microsoft Fabrics
Azure Data Engineering