The mission: give analysts a modern lakehouse over patient data without ever exposing PHI to a public endpoint. Everything provisioned by Terraform; nothing clickable in the portal.
[ BUILD PARAMS ]
- PLATFORM
- Azure Databricks (VNET-injected)
- PATTERN
- Medallion (bronze / silver / gold)
- COMPLIANCE
- HIPAA · Zero Trust boundaries
- NETWORK
- Private Link only — no public ingress
- IAC
- Terraform, 100% of resources
#Architecture
┌────────────────────── PRIVATE VNET ──────────────────────┐
│ │
│ ┌─ BRONZE ─┐ ┌─ SILVER ─┐ ┌── GOLD ──┐ │
│ │ raw PHI │ ──▶ │ cleansed │ ──▶ │ de-ident │──▶ BI │
│ │ ADLS gen2│ │ conformed│ │ aggregate│ (RBAC) │
│ └──────────┘ └──────────┘ └──────────┘ │
│ ▲ │
│ Private Link ◀── ingestion (ADF, self-hosted IR) │
└──────────────────────────────────────────────────────────┘
NO PUBLIC ENDPOINTS · CMK ENCRYPTION · AUDIT LOGS ON
#Step 1 — Network Skeleton First
VNET injection cannot be retrofitted. Provision the network before the workspace:
| |
#Step 2 — Workspace with No Public IP
| |
#Step 3 — Medallion Zones with RBAC That Means It
- Bronze (raw PHI): service principals only. No human reads bronze.
- Silver (cleansed): data engineers, break-glass audited.
- Gold (de-identified aggregates): analysts and BI.
| |
#Step 4 — Prove It
Compliance is a plan-time failure, not a review meeting. terraform plan runs in CI with policy checks: no storage account without CMK, no subnet without an NSG, no workspace with public access. A violation fails the PR.
| Control | Mechanism | Verified by |
|---|---|---|
| PHI never public | Private Link + no_public_ip | CI policy check |
| Least privilege | Zone-scoped RBAC | Quarterly access review |
| Encryption | CMK on ADLS + managed disks | terraform plan policy |
| Auditability | Workspace audit logs → SIEM | Log pipeline heartbeat |