Skip to content

Limits: What You Can't (or Shouldn't) Do

The platform is shared. These limits keep it secure, compliant and manageable for everyone.

Network

Limit Why What to do instead
No direct inbound traffic from the internet to your spoke All traffic is inspected centrally Publish web apps through the central Application Gateway with WAF (request). For SFTP to a storage account, ask for a DNAT rule (Inbound SFTP)
Outbound internet only to allowed destinations Internet traffic goes through the central firewall Request firewall rules for the FQDNs, IPs and ports you need
No VNet peering to other spokes or your own VPN gateways Routing is managed in the hub Request a firewall rule for spoke-to-spoke traffic
You can't change your VNet address range, subnets, NSGs or route tables in the portal They are managed by the platform as code; manual changes are overwritten Request a spoke change
Your address range comes from the central IP plan Overlapping ranges break routing Tell the platform team how many addresses you need
Firewall rules between production and non-production spokes are normally not allowed Production data must not flow to environments that are not production Use test data in non-production. Ask your security officer if you believe you need an exception.
Normally no public IP addresses on your resources Public access goes through the Application Gateway (web) or the firewall (other protocols) Use private endpoints and the central entry points (Design principles)
Don't change the priority of an existing NSG rule in the spoke JSON Terraform recreates the rule, and that can fail and leave the NSG in an inconsistent state Ask for a new rule with a new name and priority, and remove the old rule in a later change
Incoming traffic from other workloads to your spoke is denied until you agree to a rule Rules are defined at the destination, so the owner of the destination decides who may enter Expect to be asked for approval when another team requests access to your spoke, and give your reasons if you refuse (How it works)

Identity and access

Limit Why What to do instead
Access goes through the four spoke groups Consistent, auditable access Ask for your team's group to be added to ProductTeamGroupNames
Elevated roles may require PIM activation Least privilege Activate the role in PIM when you need it
Don't change the members or owners of the spoke groups yourself They are managed by the platform Change the members of your team's group in Entra ID

Governance

Limit Why What to do instead
Some Azure Policies deny deployments (for example public endpoints or missing encryption) Security baseline Design for private endpoints; if you really need an exception, request a policy exemption with a rationale and an end date
Required tags on the subscription: owner, department, workload, pii, costcentre, environment Cost allocation and ownership Keep them current; ask for a change when ownership changes
Only the prd spoke may hold production data Data governance Use test data in dev, tst and acc
Don't move your subscription to another management group, rename it or delete it Placement drives the policies you get Request a spoke change or deletion
No manual changes in production A manual change has no history and is error-prone; in your spoke it is also overwritten if it touches the baseline Change production only through your pipeline, reviewed by a second person (Design principles)
Don't use the baseline Key Vault, storage account or workspace for things they were not meant for They support the spoke itself Deploy your own with your code, and check with your platform team what the baseline resource is used for

Naming and lifecycle

Limit Details
Workload short name: at most 6 characters, fixed for life It is in every resource name and in the platform's state. Changing it means a new spoke.
Environment is fixed for life dev stays dev. A new environment is a new spoke.
Regions Only the regions the hub runs in. Adding a region to the hub is a separate request.
Deleting a spoke doesn't cancel the subscription The platform team decommissions it separately.