Check ID:
Provider: Azure
Service:
Severity: HIGH
Categories:
Resource type:
databricks_workspace_vnet_injection_enabledProvider: Azure
Service:
databricksSeverity: HIGH
Categories:
trust-boundariesResource type:
microsoft.databricks/workspacesWhat this check verifies
Azure Databricks workspaces using VNet injection are placed in a customer-managed VNet rather than a Databricks-managed network. This evaluates whether a workspace is linked to a customer VNet.Risk
Using a Databricks-managed VNet limits control over routing, egress, and access boundaries, degrading confidentiality and integrity.- Unrestricted outbound paths enable data exfiltration
- Harder to enforce private endpoints and NSG policies
- Increased chance of lateral movement into compute nodes
Recommendation
Deploy workspaces in a customer-managed VNet and apply defense in depth:- Enforce egress control with firewalls/NAT and UDRs
- Prefer private endpoints to public access
- Apply least privilege NSG rules and segregate subnets
- Use DNS controls and monitoring to detect anomalies
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
az databricks workspace create —name <workspace_name> —resource-group <resource_group_name> —location <region> —sku premium —vnet /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Network/virtualNetworks/<vnet_name> —public-subnet <public_subnet_name> —private-subnet <private_subnet_name>
References
- https://learn.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/vnet-inject
- https://www.trendmicro.com/cloudoneconformity/knowledge-base/azure/Databricks/check-for-vnet-injection.html
Where this check fires
This check runs on every scheduled scan against your Azure account. Findings appear at Cloud Security → Findings filterable byCheck ID = databricks_workspace_vnet_injection_enabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to Azure checks