2025-08-06
DLP Policies for Microsoft Fabric and Power Platform

DLP That Actually Works: Plugging the Hidden Leaks in Fabric & Power Platform
Tagline
It’s not just email. Stop shadow connectors, cross-environment leaks, and “harmless” flows before data walks out.
What you’ll learn
-
How DLP really makes decisions in Fabric & Power Platform (the behind-the-scenes if-then tree)
-
Where policies fail: new/custom connectors, “personal” endpoints, and dev/test/prod handoffs
-
A practical method to map real data flows (not just policy screens)
-
Connector classification that matches business reality (without freezing innovation)
-
An adaptive testing rollout that blocks exfiltration without breaking critical automations
Why DLP still fails: the blind spots
-
Set-and-forget policies: Built for known connectors; new releases/custom connectors slide past reviews.
-
Shadow IT via low-code: Citizen devs wire apps to personal OneDrive/Dropbox/Gmail “for convenience.”
-
Environment drift: Prod → dev/test copies move sensitive data into weaker guardrails.
-
Assumed safety: “Business” connectors with public APIs = potential side doors.
-
Audit shock: Real data paths ≠ your policy diagram; leaks surface only post-incident.
Mapping the maze: the if-then decisions that matter
Think of DLP as a decision tree evaluated at run time:
Identity & environment checks
-
If user is in restricted role and environment = Prod → apply strict policy set.
-
If data label = Confidential/Highly Confidential → block all non-managed destinations.
Connector lineage
-
If destination connector ∈ Personal/Blocked group (e.g., Dropbox personal, Gmail) → block.
-
If custom connector and not approved/tagged → quarantine (log, alert, require exception).
Path awareness
-
If source = Managed (Dataverse/SharePoint/SQL in tenant) and destination = Unmanaged/Unknown → block & alert.
-
If cross-environment move (Prod → Dev/Test) and dataset contains sensitive fields → mask or redact before export.
Context throttles
-
If automation frequency spikes or volume exceeds baseline → rate-limit + alert (possible bulk exfiltration).
-
If user recently changed departments/permissions → require step-up approval for external flows.
Connector classifications: sorting signal from noise
Group by business process, not just vendor:
Tier 1 – Core managed (low risk, high utility)
SharePoint, OneDrive for Business (tenant-scoped), Teams, Dataverse, Azure Blob (managed), Microsoft Graph.
Tier 2 – Partner/approved (medium risk, controlled)
Pre-vetted SaaS for Finance/HR/Support; enforce tenant-to-tenant whitelists, IP restrictions, and audit.
Tier 3 – Custom/experimental (elevated risk)
Custom connectors, webhooks, trial SaaS; default to quarantine until reviewed; require data maps.
Tier 4 – Personal/consumer (blocked)
Personal Dropbox/Google Drive/Gmail, personal OneDrive, public pastebins; block with user-facing rationale.
Classification rules of thumb
-
Require ownership + business justification for Tier 2/3.
-
Attach a data contract: allowed labels, volume caps, retention, and revocation path.
-
Re-certify connectors quarterly or on scope change; auto-expire approvals without attestations.
Real-world patterns (and fixes)
-
Payroll export → personal Dropbox
-
Detect: Destination domain not in managed list; connector = personal.
-
Block & coach: Show inline message, route to secure SFTP/managed storage template.
-
-
Prod copy → Dev workspace
-
Control: Mask PII via Fabric pipeline rule; Dev inherits stricter DLP; exports restricted to managed blob.
-
-
“Benign” business connector with public API
-
Mitigate: Move to Tier 2 with egress allow-list; disable open web endpoints; log destination URIs.
-
-
Custom connector POC left in prod
-
Govern: Auto-discover via inventory scan; if no owner/attestation → disable after grace window.
-
Testing without tears: adaptive rollout
1) Build a safe proving ground
-
Mirror prod connectors into sandbox environments; replay representative flows with synthetic data.
-
Run tabletop drills: simulate export to personal endpoints, cross-env transfers, custom connector calls.
2) Pilot with real users
-
Scope to 1–2 teams (e.g., Finance + HR). Start in audit-only mode for 7–14 days; collect blocks that would have fired.
3) Ship with guardrails
-
Turn on hard blocks for Tier 4 and unknown custom connectors.
-
Enable soft blocks (override with justification) for Tier 2 edge cases; auto-open tickets for review.
4) Observe & iterate
-
Monitor success/fail, time-to-resolution, false-positive rate; tune rules weekly for first month.
-
Promote policies org-wide after meeting SLOs (e.g., <3% critical false positives, zero unapproved egress).
Monitoring & analytics: what to watch
-
Connector inventory drift: new/changed connectors since last review.
-
Egress hotspots: top destinations by volume outside tenant domains.
-
Privilege anomalies: users creating external flows after role change.
-
Policy effectiveness: block events vs approved exceptions; repeat offenders.
-
MTTD/MTTR for DLP incidents; % incidents auto-resolved with guided alternatives.
Operational queries to keep handy
-
“Show flows with managed source → unmanaged destination in last 7 days.”
-
“List custom connectors without owner or last review >90 days.”
-
“Top users by blocked attempts and their business units.”
Playbooks you can copy
A) Personal storage escape hatch
-
Condition: Destination domain ∉ allow-list OR connector ∈ Personal.
-
Action: Block + inline guidance to managed storage; log incident; notify app owner.
B) Cross-environment data downgrade
-
Condition: Dataset label ≥ Confidential AND env change Prod → Dev/Test.
-
Action: Enforce masking template; require approval; time-bound access; audit export.
C) Custom connector intake
-
Intake form → data map + owner + purpose → temporary Tier 3 with quota; 30-day review to Tier 2 or disable.
D) High-volume anomaly
-
Baseline per app/user; if 3× spike, rate-limit and alert SecOps; require one-time approval to continue.
Governance essentials
-
Policy as code (templates, versioning, change logs).
-
Exception workflow with expiry, owner, and reviewer.
-
Quarterly connector council with IT + Security + BU champions.
-
Runbooks for block events (who’s paged, what to say, approved alternatives).
KPIs that prove it’s working
-
↓ Unmanaged egress attempts (per 1k users)
-
↑ Time-to-policy (connector creation → classification)
-
↓ Critical false positives (breakages)
-
↑ % flows using managed destinations
-
100% custom connectors with owners + current attestations
Quick-start checklist (this week)
-
Export connector inventory; tag Tier 1–4; find “unknowns.”
-
Create Personal/Consumer Block group; enable hard blocks + helpful guidance.
-
Turn on audit-only for cross-env exports; review 14 days of signals.
-
Stand up custom connector intake + 30-day expiry.
-
Pilot adaptive policy with Finance; measure false-positive rate and fix before scaling.
Suggested SEO assets
-
URL slug: power-platform-fabric-dlp-hidden-leaks
-
Meta title: Fabric & Power Platform DLP: Stop Hidden Leaks from Shadow Connectors and Cross-Env Flows
-
Meta description: Go beyond email DLP. Learn how to map real data paths, classify risky connectors, and roll out adaptive policies that block exfiltration without breaking workflows.
-
Keywords: Power Platform DLP, Microsoft Fabric DLP, data loss prevention, shadow IT, custom connectors, cross-environment data, governance, compliance, adaptive policies
Who this is for
Security architects, Power Platform/Fabric admins, compliance leads, and ops teams who need strong guardrails without paralyzing the business.
Host: Mirko Peters