Skip to content
CAMPUX Cloud Bootcamp Phase Two · Class Fourteen · Part II
Phase Two — Core Infrastructure
4 drills · 2 situations · Part II of II
Private Connectivity
Class Fourteen · Part II

Private Link Service — and the limits that bite

Part I built the consumer's private endpoint. This half publishes a service that endpoint can reach. Learn what the alias does, who may request access, who approves it, and what still needs DNS and application authentication.

Phase Two · Core Infrastructure · Class 14 · Part B · 13 min · Assumes Class 14 Part A and Class 13 Part A

After this you can distinguish Private Link Service visibility, approval, consumer DNS and API authentication, and explain regional and NAT limits.

New to this? Read Class 14 Part A and Class 13 Part A first. Already done them, or know the material? Carry on.

Play

Play it through

Put the provider stack and consumer request in order. Then see why open visibility invites requests without approving them, and why DNS and API credentials still matter.

This half carries no lab. Standing up a Private Link Service means a real Standard Load Balancer, a NAT-IP subnet, and — to see the cross-tenant approval for real — a second Azure tenant to request from, which is well past a beginner Cloud Shell exercise. Play the lesson above instead; it rehearses the exact same build-then-approve sequence at zero cost and zero risk.

§2

Across regions, across tenants, and the limits that bite

A consumer's private endpoint can be in a different region from the Private Link Service. The service itself is deployed in the same region as its provider VNet and Standard Load Balancer. The connection can work across regions, but measure latency and data-transfer costs; a private path does not make a distant API fast. If the provider needs a closer service, it must deploy the API and its load balancer in that region and publish another Private Link Service there.

The consumer and provider can also be in different subscriptions and Microsoft Entra tenants without peering their VNets. Connection approval may be manual or based on a provider-managed auto-approval list. Approval permits a network path to this service, not unrestricted access to the provider VNet or authorization inside the API. Use application credentials and revoke an unwanted connection at the provider service; test that the consumer can no longer connect.

The DNS zone group, named at last

Part I kept returning to wiring the endpoint to its zone; here is the object that does it. A private DNS zone group is a small sub-resource of the private endpoint that binds the endpoint to one or more private DNS zones and keeps the A-record in step with the endpoint's IP automatically. It is the difference between a zone you hand-maintain and one Azure keeps correct for you: create the endpoint, attach the zone group, and if the endpoint's private IP ever changes the record follows it without a human touching the zone. This is why the CLI lab ran private-endpoint dns-zone-group create as its own step and the portal's DNS tab offered one toggle — both are creating this object. Resolving that same name from on-premises, where your machines cannot see an Azure private zone at all, is the whole of Class Fifteen; the zone group is the piece that makes the name correct inside Azure, and the on-prem resolver is what carries that answer back to the office.

Private endpoints incur hourly and data-processing charges; Standard Load Balancer, Private Link Service traffic and cross-region transfer can add costs. Check current prices for the regions and expected traffic. A storage account may need separate endpoints for Blob, File, Queue and Table when those services are used privately. Private endpoints consume subnet IPs, and Private Link Service has NAT and resource quotas; size them against measured connection and address needs.1

Table 1 — The three private-connectivity tools, side by side
 Service endpointPrivate endpointPrivate Link Service
Whose side you are onConsumerConsumerProvider
What it producesA trusted subnet on a public resourceA NIC + private IP fronting one resourceAn alias others connect to privately
Crosses tenants?Not a cross-tenant private pathYes, where supported, subject to connection approvalYes; manual or scoped automatic approval
Crosses regions?NoYes — endpoint and target may differConsumer endpoint may; the service may not
Needs a load balancer?NoNoYes — Standard, never Basic
CostFreePer hour + data processedNo charge to publish — data processed bills on the consumer's private endpoint

Use the table to identify candidates. A service endpoint keeps a public-IP DNS answer and needs a resource firewall rule. A private endpoint adds a private IP; public network access is disabled separately where required. Private Link Service publishes an application for consumers' private endpoints. In each design, test DNS, route and authorization from the real client.

On the job

Approving the one connection that matters

You · Cloud Engineer · a shipping partner needs the order-status API

Campux publishes the order API behind a Standard Load Balancer and Private Link Service. The shipping partner requests a private endpoint connection using the alias. Campux checks the subscription against its partner record and approves the Pending request. The partner then configures its API name to resolve privately and authenticates to the API. Campux verifies that no earlier public ingress still reaches it. An unknown subscription that can see the service may request too, but stays Pending unless someone approves it or adds it to auto-approval.

Guided practice · Supplied training example

Approve one partner without skipping authentication

Use the fictional evidence below. This is a desk exercise; it does not provision Azure resources or measure a live service.

Provider: shipping API behind supported internal load balancer
Consumer: partner VNet and private endpoint
Connection: pending approval
API login: still required
  1. Draw provider and consumer separately.

  2. List approval, private DNS, route and application-authentication checks in order.

  3. Predict the result after approval if the partner has no valid API credential.

Check your reasoning after you finish

Approval enables the private connection path; it does not grant API permission. The consumer must resolve the intended private endpoint and reach it. A request with no valid API credential should still be refused by the application.

Class Fourteen · Part II

Examination

Four drills, then two situations. The situations have no marking scheme — write your answer before you reveal the reasoning, or the exercise is worthless. Nothing is stored; this is between you and the page.

Drill 01Recall · what it publishes
You create a Private Link Service in front of your order API. What does a consumer in another tenant actually do to reach it?
Marked

A. The partner creates a private endpoint targeting Campux's alias. Campux controls visibility and approval; the partner configures DNS and API authentication. Peering and a role in Campux's subscription are not required. Private Link Service does not add a new public route, but it also does not close an old one automatically.

Drill 02Recall · the Pending state
A partner's connection request arrives on your Private Link Service and shows as Pending. What has to happen before any of their traffic actually flows?
Marked

C. This request is Pending, so it needs a provider approval before it can carry traffic. It does not become active by waiting or resolving the alias. A vetted subscription on an auto-approval list can skip Pending for a new request, but that is not what happened here. Approval permits a network path, not automatic API access.

Drill 03Select three
Which three statements about Private Link Service are true?
Marked

Standard Load Balancer, up to eight NAT IPs, and a cross-region consumer endpoint. The existing provider API does not move through a Private Link setting; a closer deployment requires a second provider stack. An alias is not a secret, so open visibility can invite requests from unknown subscriptions. Those requests still need approval unless the subscription is on the provider's auto-approval list.

Drill 04Spot the error
A colleague's plan would automatically approve an unknown subscription that gets the alias. Which line causes that?
PLAN — onboard partner-logistics over Private Link

1.  Put the order API behind a Standard Load Balancer.
2.  Create the Private Link Service against that balancer;
    note the alias it mints.
3.  Set visibility to "Anyone with the alias" and add all
    requesting subscriptions to auto-approval without review.
4.  Hand today's partner the alias; they create a private
    endpoint against it in their own subnet.
Marked

Line three. Open visibility alone only allows more subscriptions to request connections; it does not approve them. The dangerous addition is putting unverified subscriptions on the auto-approval list, which lets their connections become Approved without a review. Restrict visibility to known partner subscriptions when possible, and auto-approve only ones the provider has already vetted. The partner still needs DNS and API credentials after connection approval.

Situation 01Write before you reveal
A second shipping partner, based in a region on the other side of the world from your order API, asks: "Can you move the Private Link Service closer to us? Our connections are slow." What is and is not possible here, and what do you actually do?
One side of this connection can move to chase a region. Which one?
Reasoning

Concede the latency is real, then correct the request. The Private Link Service cannot be redeployed to sit "closer" to a consumer — it is anchored to the Standard Load Balancer and virtual network it was created against, for as long as it exists. There is no setting that relocates it, because it is not a standalone object; it is a front door bolted to a specific building. Moving the building is not an option.

Name what actually can move: their endpoint, not your service. The partner's private endpoint can already sit in whatever region their own workload runs in — that part of the design is region-agnostic by design. The distance between their endpoint and your Private Link Service is a real latency cost of geography, not a networking mistake to fix; it is priced in the same way any cross-region call would be, private or not.

If the requirement is genuinely "fast, private access from three continents," the honest answer is more infrastructure, not a relocated one. Deploy the order API, its load balancer, and a Private Link Service in each region that needs low latency, and give each regional partner an alias for the stack nearest them. That costs real money and real operational surface — which is exactly why it should be a deliberate decision against a stated latency requirement, not a favour granted because one partner asked.

Situation 02Write before you reveal
A teammate says: "Approving every partner connection by hand doesn't scale. Let's set visibility to anyone with the alias; then every connection will be approved immediately." How do you answer?
The complaint about manual approval is legitimate. The fix they are proposing removes the wrong thing.
Reasoning

Concede the real cost before defending the control. Being the manual approver for every new partner genuinely does not scale past a handful of relationships, and a teammate who is tired of being that bottleneck is pointing at a real problem. Dismissing the complaint outright loses the argument before it starts.

Correct the two settings. Visibility decides who may request. “Anyone with the alias” widens that group but does not make their requests Approved. The alias is an identifier, not an API credential. Keep visibility restricted when the partner list is known and review Pending requests from outside any trusted auto-approval list.

Automate carefully. Put only vetted subscription IDs on a scoped auto-approval list. Their future connections can be approved automatically; other visible subscriptions still need manual approval. Keep API authentication and monitor connection changes, because Approved means a network path exists, not that every caller should see order data.

Examination record · first attempt
0/4
Class Fourteen · Part II · Complete
Retain this much

What Part II leaves you holding

  1. A Private Link Service is the provider side of Private Link: it publishes your own service, behind a Standard Load Balancer, for private consumption — the exact mirror of the private endpoint you built to reach in.
  2. A consumer targets your alias with a private endpoint. Visible subscriptions outside the auto-approval list wait Pending for a provider decision.
  3. Visibility controls who can ask; approval controls which connections work. Neither replaces DNS or API authentication.
  4. A private endpoint may cross regions and tenants; the Private Link Service itself may not move — it stays anchored to its own load balancer and virtual network for as long as it exists.
  5. Private Link hands over one door, not a shared hallway: no peering, no shared RBAC, one connection approved or revoked at a time.
Notes
  1. Treat the specific figures here as current-at-writing, not eternal: the eight-NAT-address ceiling per Private Link Service and the per-load-balancer and per-subscription caps are the ones Microsoft documents today, and the hourly and per-gigabyte prices vary by region and drift over time. The direction is what to carry — private endpoints bill where service endpoints do not, endpoints are per-sub-resource, and a Private Link Service is a Standard-Load-Balancer-only, provider-side object with a NAT pool. Check the live limits and pricing pages before you size or budget anything. ↩ ↩
  2. Microsoft's Private Link Service overview states that visibility controls who can request, while auto-approval controls which vetted subscriptions connect without a manual provider decision. ↩