๐Ÿ‘ค Who is this for?

IT Admins, Security Engineers, Network Architects โ€” anyone responsible for securing connectivity to and from Microsoft Fabric in enterprise environments.

Networking

Zero-Trust Network Architecture

Microsoft Fabric is a SaaS platform, but enterprises still need strict network boundaries. Here's how to integrate Fabric into your corporate zero-trust posture.

๐Ÿ’ก Key Principle

Zero-trust means never trust, always verify. All traffic between users, Fabric, and data sources should traverse private channels โ€” disable public endpoints wherever possible.

๐Ÿ”’ Inbound โ€” Users to Fabric

Control how users and applications connect to Fabric workspaces and services.

  • Azure Private Link โ€” Route all user traffic through private endpoints in your VNet
  • Conditional Access โ€” Entra ID policies enforce device compliance, location, MFA
  • Tenant restrictions โ€” Prevent data exfiltration to unauthorized tenants

๐Ÿ”— Outbound โ€” Fabric to Data

Control how Fabric connects to your private data sources and external services.

  • Managed Private Endpoints โ€” Fabric connects to your resources through Azure backbone, not public internet
  • VNet Data Gateways โ€” Bridge Fabric to on-premises or VNet-isolated resources
  • Trusted Workspace Access โ€” Allow firewalled Storage Accounts to trust Fabric

๐Ÿ›ก๏ธ Internal โ€” Between Services

Secure communication between Fabric components and Microsoft backbone services.

  • Managed VNets โ€” Spark workloads run in Fabric-managed virtual networks with controlled egress
  • Service tags โ€” NSG rules using DataFactory and PowerBI service tags
  • Data encryption โ€” TLS 1.2+ in transit, Microsoft-managed keys at rest

Network Architecture Overview

YOUR CORPORATE NETWORK MICROSOFT FABRIC (SaaS) AZURE DATA SOURCES ๐Ÿ‘ค Users & Apps Entra ID + Conditional Access ๐ŸŒ Hub VNet Azure Firewall + NSGs ๐Ÿ”— Private Endpoints PE for Fabric + DNS zones ๐Ÿข On-Premises ExpressRoute / VPN Gateway Fabric Workspaces Lakehouse ยท Warehouse ยท PBI Managed VNet Spark pools ยท Controlled egress Managed Private EP Outbound to data sources VNet Data Gateway Bridge to on-prem / VNet Azure Data Lake (ADLS) Firewall: Allow trusted services Azure SQL / Synapse Private endpoint approved Azure Key Vault Secrets & certificates Cosmos DB / Other PaaS MPE-supported resources
Outbound

Managed Private Endpoints (MPE)

Secure outbound connections from Fabric to your private data sources โ€” without exposing them to the public internet.

What are Managed Private Endpoints?

When Fabric needs to read from resources that have public access disabled (like ADLS behind a firewall), you create a Managed Private Endpoint from the Fabric workspace. Fabric creates a private endpoint inside its managed VNet, and you approve it in the Azure Portal on the target resource.

Setup Steps

1. Enable Managed VNet

In Fabric workspace settings, enable Managed Virtual Network for Spark workloads. This is a prerequisite for MPE.

2. Create MPE

Workspace Settings โ†’ Managed Private Endpoints โ†’ + New. Select the target resource type and enter the Azure Resource ID.

3. Approve in Azure

Go to the target resource (e.g., Storage Account) โ†’ Networking โ†’ Private Endpoint Connections โ†’ Approve the pending connection.

4. Use in Notebooks

Connect to the resource from Spark notebooks or pipelines. Traffic flows over Azure backbone via the approved private endpoint.

Supported Resource Types

Azure ResourceResource ProviderSub-resource
Azure Data Lake Storage (ADLS Gen2)Microsoft.Storage/storageAccountsdfs
Azure SQL DatabaseMicrosoft.Sql/serverssqlServer
Azure Synapse AnalyticsMicrosoft.Synapse/workspacesSql, SqlOnDemand, Dev
Azure Key VaultMicrosoft.KeyVault/vaultsvault
Azure Cosmos DBMicrosoft.DocumentDB/databaseAccountsSql
Azure Cognitive Services / OpenAIMicrosoft.CognitiveServices/accountsaccount
Azure Event HubsMicrosoft.EventHub/namespacesnamespace
โš ๏ธ Performance note

When Managed VNet is enabled, Starter Spark pools are not available. Spark session start-up time increases because pre-warmed clusters cannot be used. Plan for capacity accordingly โ€” use F64+ SKUs and consider keeping sessions alive for iterative development.

Isolation

Managed Virtual Networks

Fabric-managed VNets provide network isolation for Spark workloads with controlled outbound access.

How Managed VNets Work

When enabled at the workspace level, Fabric provisions a Microsoft-managed virtual network for all Spark compute in that workspace. Outbound traffic is restricted โ€” Spark can only access destinations through approved Managed Private Endpoints or public endpoints you explicitly allow.

โœ… What is controlled

  • All Spark notebook and pipeline outbound traffic
  • Connections to Azure PaaS resources via MPE
  • Egress to public internet (blocked by default)
  • DNS resolution within the managed VNet

โš ๏ธ What is NOT covered

  • SQL endpoint (Warehouse, SQL Analytics) โ€” uses separate connectivity
  • Power BI / semantic models โ€” not in managed VNet
  • Data Factory pipelines โ€” use VNet Data Gateways instead
  • KQL / Eventhouse โ€” separate networking model
๐Ÿ’ก Best practice

Enable Managed VNet on workspaces that process sensitive data via Spark. For workspaces doing only Power BI reporting or SQL queries, it's not needed and avoids the Spark startup penalty.

Hybrid

VNet Data Gateways

Connect Fabric to on-premises data sources and VNet-isolated Azure resources without installing software.

When to Use

VNet Data Gateways are the recommended approach when you need Fabric to reach resources inside a VNet that aren't accessible through Managed Private Endpoints โ€” for example, on-premises SQL Server via ExpressRoute, or Azure resources in peered VNets.

VNet Data Gateway

  • No software to install โ€” fully managed by Microsoft
  • Runs in a delegated subnet in your VNet
  • Supports Dataflows Gen2, Semantic Models, Paginated Reports
  • Accesses anything reachable from the subnet (on-prem via peering/ER)

On-Premises Data Gateway (classic)

  • Software installed on a VM or server you manage
  • Required for some legacy connectors
  • Outbound HTTPS โ€” no inbound ports needed
  • Consider only when VNet Data Gateway doesn't support your source

Setup Requirements

RequirementDetails
Subnet delegationDelegate a subnet to Microsoft.PowerPlatform/vnetaccesslinks โ€” minimum /28 CIDR
NSG rulesThe delegated subnet needs outbound HTTPS (443) to Power BI service endpoints
VNet peeringFor on-premises access, the VNet must be peered with hub VNet or have ExpressRoute/VPN
CapacityRequires Fabric F2+ or Power BI Premium capacity
RegionGateway must be in the same region as the Fabric capacity
Storage

Trusted Workspace Access

Allow Fabric to access firewalled Azure Storage Accounts using workspace identity โ€” no public access or private endpoints required.

How it works

Azure Storage firewall can be configured to trust specific resource instances. By registering Fabric workspace identities, you allow OneLake shortcuts and Spark to access the storage โ€” even when "Allow public access" is OFF.

Azure CLI โ€” Enable trusted access for a Storage Account
# 1. Get the Fabric workspace identity (ARM resource ID)
#    Found in Workspace Settings โ†’ Azure tab

# 2. Add it as a resource instance rule on the Storage Account
az storage account network-rule add \
  --account-name mystorageaccount \
  --resource-group myRG \
  --resource-id "/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Fabric/workspaces/{workspaceId}" \
  --tenant-id "{tenantId}"

# 3. Verify the Storage Account firewall settings
az storage account show --name mystorageaccount \
  --query "networkRuleSet.resourceAccessRules"
๐Ÿ’ก When to use Trusted Access vs MPE

Trusted Workspace Access is simpler for OneLake shortcuts and basic Spark access to ADLS. Managed Private Endpoints are needed for SQL databases, Key Vault, Cosmos DB, and any non-storage resource that requires private connectivity.

Identity

Conditional Access & Tenant Policies

Use Entra ID Conditional Access and Fabric Tenant Settings to enforce who, from where, and how users access Fabric.

๐Ÿ“ Location-Based Policies

  • Block access from non-corporate IP ranges
  • Require VPN/Private Link for sensitive workspaces
  • Geo-fence to specific countries

๐Ÿ“ฑ Device Compliance

  • Require Intune-compliant or Hybrid AD-joined devices
  • Block access from unmanaged/personal devices
  • Enforce app protection policies on mobile

๐Ÿ”‘ Authentication Strength

  • Require phishing-resistant MFA (FIDO2, Windows Hello)
  • Step-up authentication for admin operations
  • Session controls (sign-in frequency, persistent browser)

๐Ÿšซ Tenant Restrictions

  • Prevent users from accessing other organizations' Fabric tenants
  • Block guest access to sensitive workspaces
  • External sharing policies per workspace
๐ŸŽฏ Recommended baseline

At minimum, configure: (1) Require MFA for all Fabric users, (2) Block access from non-compliant devices, (3) Restrict admin portal access to named locations. These three policies prevent the majority of identity-based attacks.

Decision Guide

Networking Decision Matrix

Choose the right networking approach based on your security requirements and workload type.

Scenario Recommended Approach SKU Minimum Complexity
Users access Fabric from corporate network only Private Link + block public access F64 ๐ŸŸก Medium
Spark reads from firewalled ADLS Managed Private Endpoints (MPE) F64 ๐ŸŸก Medium
OneLake shortcuts to firewalled storage Trusted Workspace Access F2 ๐ŸŸข Low
Dataflows connecting to on-premises SQL VNet Data Gateway F2 ๐ŸŸก Medium
Full zero-trust (all traffic private) Private Link + MPE + Managed VNet + CA F64 ๐Ÿ”ด High
Development / non-sensitive workloads Public endpoints + Conditional Access + MFA F2 ๐ŸŸข Low