Quick summary
This reference provides the top 10 recommendations for designing, deploying, securing and operating Azure Private Link and Private Endpoints, including exact Azure Portal click paths and PowerShell snippets for common tasks.
Quick checklist
Run these checks after creating or changing Private Endpoints
- Private Endpoint status is Approved and shows an IP in the target subnet
- DNS resolution returns private IP (validate from a VM in the VNet)
- NSGs and route tables permit required traffic to service and DNS
- Audit private link connections in Resource provider and Activity Log
- Confirm no public endpoint access if private-only required
Top 10 Recommendations
1. Plan VNet/subnet placement and IP capacity
Reserve dedicated subnet(s) for Private Endpoints; ensure sufficient IPs and avoid mixing with other workloads to simplify governance and auditing.
- Azure Portal: Home > Virtual networks > select VNet > Subnets > + Subnet > name (e.g., pe-subnet) > assign address range > Save.
- Allocate /24 or larger depending on number of endpoints; avoid using subnet with enforced service endpoints to same resource.
2. Use Private Link Service or platform Private Endpoints where appropriate
Choose platform service Private Endpoints for Azure PaaS (Storage, SQL, Key Vault). Use Private Link Service when exposing your own service privately.
- Portal (PaaS): Storage Account > Networking > Private endpoint connections > + Private endpoint > Create; choose resource and target subnet > Create.
- Portal (custom service): Resource provider offering Private Link Service > create Private Link Service resource, then consumers create endpoints to it.
3. Enforce DNS design for private resolution
Provision private DNS zones or conditional forwarding so service hostnames resolve to private IPs inside your VNets; test from client VMs.
- Portal: Private DNS zones > + Create > name (e.g., privatelink.blob.core.windows.net) > Link virtual network > Save.
- Create A records or let Private Endpoint registration add records automatically; validate with nslookup from VM in VNet.
4. Approve or reject PE connections centrally and log approvals
Control who can approve Private Endpoint connections (resource owner). Use RBAC and Activity Log to audit approvals.
- Portal: Resource (e.g., Storage) > Private endpoint connections > select pending connection > Approve or Reject; add a note if approving.
- Audit: Monitor > Activity Log > filter by 'Microsoft.Network/privateEndpoints' and review operations.
5. Restrict public access on PaaS resources when using private endpoints
Set resource firewall/network settings to allow only selected VNets or private endpoints; block public network access when strict isolation required.
- Portal: Storage Account > Networking > Selected networks > add Virtual network or Private endpoint; set 'Allow trusted Microsoft services' per policy.
- Key Vault: Networking > Allow access from selected networks; add private endpoint or VNet exceptions.
6. Harden subnet security (NSGs and route tables)
Control traffic to/from Private Endpoint subnet using NSGs; avoid blocking Azure DNS or required Microsoft service IPs. Use UDRs cautiously.
- Portal: Virtual networks > Subnets > select pe-subnet > Network security group > Associate or create NSG with explicit allow rules for DNS and necessary management traffic.
- Route tables: Virtual networks > Route tables > create/associate if you need forced tunneling; ensure routes don't blackhole private link traffic.
7. Use Private Endpoint network policies correctly for PaaS with service-specific requirements
Some services require network policies enabled/disabled on subnets; follow service guidance to set the 'Private endpoint network policies' appropriately.
- Portal: Virtual networks > Subnets > select subnet > click 'Private endpoint network policies' toggle as required (sometimes must be Disabled for certain scenarios).
- Validate service documentation for recommended setting before changing.
8. Automate lifecycle and approvals with IaC and RBAC
Automate creation of endpoints, DNS links and approval workflows. Ensure only authorized principals can approve connections.
- Portal > Azure Policy: enforce tagging and allowed subnets; use RBAC (Access control) on resource to limit approver roles.
- Use ARM/Bicep or PowerShell to create endpoint and private DNS zone links; include logging and tagging as part of automation.
9. Monitor and alert on private link state and DNS failures
Alert on Private Endpoint health, Private Link connection state, and DNS resolution failures from test VMs or synthetic probes.
- Portal: Monitor > Metrics > select Private Endpoint resource or Network Interface metrics; create Alert rules for unhealthy states.
- Use Log Analytics to collect DNS/NSG logs and create scheduled queries to detect anomalies.
10. Audit and review connections regularly
Maintain inventory of Private Endpoints and Private Link Services; review owners, expiration, and usage periodically.
- Automate inventory using Resource Graph / Az CLI / PowerShell to produce scheduled lists of PEs, owners, subnets and tags.
- Run quarterly reviews requiring re-approval or removal for stale or low‑usage connections.
- Integrate PE ownership into identity governance processes (access reviews) to keep owners current.
- Flag and investigate anomalies such as PEs in unexpected subscriptions, regions or resource groups.
- Ensure Activity Log and diagnostics retention meet compliance and forensic needs for PE operations.