Verified by Garnet Grid

Cloud Landing Zone Design: Enterprise Blueprint

Design a secure, scalable cloud foundation. Covers account/subscription structure, networking, identity, guardrails, logging, and the landing zone pattern for AWS and Azure.

A landing zone is the foundational architecture that every workload in your cloud sits on top of. Get it wrong and you’ll spend years patching security holes, fighting network conflicts, and untangling account sprawl. Get it right and every new project deploys into a secure, compliant, well-governed environment from Day 1.

The biggest mistake: treating the landing zone as a one-time project. It’s a living platform that evolves with your organization. Plan for change from the start, or you’ll rewrite it within 18 months.


Core Components

Landing Zone
├── Account/Subscription Structure (isolation)
├── Identity & Access Management (who can do what)
├── Network Architecture (connectivity & segmentation)
├── Security Guardrails (preventive & detective controls)
├── Logging & Monitoring (centralized observability)
├── Cost Management (budgets, tagging, alerts)
└── CI/CD & Automation (self-service provisioning)

Account Structure

AWS (Organization + Accounts)

Management Account (billing, org policies)
├── Security OU
│   ├── Log Archive Account (centralized CloudTrail, VPC Flow Logs)
│   └── Security Tooling Account (GuardDuty, Security Hub)
├── Infrastructure OU
│   ├── Network Hub Account (Transit Gateway, DNS)
│   └── Shared Services Account (CI/CD, artifact registry)
├── Workloads OU
│   ├── Production OU
│   │   ├── App-A Prod Account
│   │   └── App-B Prod Account
│   └── Non-Production OU
│       ├── App-A Dev Account
│       └── App-B Staging Account
└── Sandbox OU
    └── Developer Sandbox Accounts (auto-nuke after 30 days)

Azure (Management Groups + Subscriptions)

Tenant Root Group
├── Platform
│   ├── Identity (Entra ID, Privileged Identity Management)
│   ├── Management (Log Analytics, Azure Monitor)
│   └── Connectivity (Hub VNet, ExpressRoute, Firewall)
├── Landing Zones
│   ├── Production
│   │   ├── App-A Subscription
│   │   └── App-B Subscription
│   └── Non-Production
│       ├── Dev Subscription
│       └── Staging Subscription
├── Sandbox
│   └── Developer Sandboxes (budget-capped)
└── Decommissioned

Account Isolation Decision Framework

QuestionYes →No →
Does the workload have different compliance requirements?Separate account/subscriptionSame account, different VPC/RG
Do teams need independent billing?Separate accountSame account, cost allocation tags
Could a blast radius impact other workloads?Separate accountSame account, network segmentation
Does the workload need production-level SLA?Production OU/MGNon-production OU/MG

Network Architecture

Hub-and-Spoke (Most Common)

                    Internet

                  ┌────┴────┐
                  │ Firewall │
                  └────┬────┘

              ┌────────┴────────┐
              │    Hub VNet     │
              │  10.0.0.0/16   │
              │ (DNS, NVA, VPN)│
              └──┬───┬───┬───┬─┘
                 │   │   │   │
    ┌────────┐ ┌─┴──┐ ┌┴───┐ ┌──┴───┐
    │Dev Spoke│ │Stg │ │Prod│ │Shared│
    │10.1/16 │ │10.2│ │10.3│ │10.4  │
    └────────┘ └────┘ └────┘ └──────┘

IP Addressing Plan

EnvironmentCIDRUsable IPsNotes
Hub10.0.0.0/1665,534Firewall, DNS, VPN gateways
Production10.1.0.0/1665,534Production workloads
Staging10.2.0.0/1665,534Pre-production testing
Development10.3.0.0/1665,534Developer environments
Shared Services10.4.0.0/1665,534CI/CD, monitoring, tooling
On-premises172.16.0.0/12ReservedCorporate network (no overlap!)

Critical: Plan for 10x your current needs. Re-IPing is painful. A /16 per environment gives you room to grow.

Network Connectivity Options

Connectivity TypeAWS ServiceAzure ServiceUse Case
Site-to-site VPNSite-to-Site VPNVPN GatewayQuick connectivity, backup link
Dedicated connectionDirect ConnectExpressRouteProduction workloads, low latency
Spoke-to-spokeTransit GatewayVNet Peering + HubCross-environment communication
Internet egressNAT GatewayNAT Gateway / Azure FirewallOutbound internet for private subnets
DNS resolutionRoute 53 ResolverAzure Private DNSHybrid name resolution

Subnet Strategy (Per Spoke)

Spoke VNet: 10.1.0.0/16
├── /24: Web tier (public-facing, behind LB)
├── /24: App tier (private, no direct internet)
├── /24: Data tier (private, no internet)
├── /24: Management (bastion, monitoring agents)
└── /28: Reserved (gateway subnet, firewall subnet)

Security Guardrails

Preventive Controls (SCPs / Azure Policy)

// AWS SCP: Deny all actions outside approved regions
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Deny",
    "Action": "*",
    "Resource": "*",
    "Condition": {
      "StringNotEquals": {
        "aws:RequestedRegion": ["us-east-1", "us-west-2", "eu-west-1"]
      }
    }
  }]
}
// Azure Policy: Require encryption on all storage accounts
{
  "if": {
    "allOf": [
      { "field": "type", "equals": "Microsoft.Storage/storageAccounts" },
      { "field": "Microsoft.Storage/storageAccounts/encryption.services.blob.enabled", "notEquals": true }
    ]
  },
  "then": { "effect": "deny" }
}

Essential Guardrails Checklist

ControlTypeAWS MechanismAzure Mechanism
Restrict regionsPreventiveSCPAzure Policy (allowed locations)
Require encryption at restPreventiveSCP + AWS ConfigAzure Policy (deny unencrypted)
Block public S3/BlobPreventiveSCP (s3:PutBucketPolicy)Azure Policy (deny public access)
Require MFA for root/adminPreventiveIAM policyConditional Access
Tag enforcementPreventiveSCP (deny untagged)Azure Policy (require tags)
Detect unencrypted resourcesDetectiveAWS Config RulesAzure Policy (audit mode)
Detect unused resourcesDetectiveTrusted AdvisorAzure Advisor
Anomaly detectionDetectiveGuardDutyMicrosoft Defender

Detective Controls

ControlAWS ServiceAzure Service
Threat detectionGuardDutyMicrosoft Defender
Config complianceAWS ConfigAzure Policy (audit)
Vulnerability scanningInspectorDefender for Cloud
Centralized loggingCloudTrail → S3Activity Log → Log Analytics
Secret scanningSecrets Manager auditKey Vault diagnostics

Identity & Access Management

Break-Glass Access

Normal Operations:
  Engineers → SSO → Role-based access → Least privilege

Emergency (break-glass):
  On-call engineer → MFA → Break-glass account → Full admin
  └── Automatically logged
  └── Notification to security team
  └── Post-incident review within 24 hours
Break-Glass RuleImplementation
Separate MFA deviceHardware token stored in secure location
Notification on useCloudTrail alarm → SNS → PagerDuty
Time-limitedSession expires in 1 hour
Post-incident reviewMandatory writeup within 24 hours
Quarterly testingTest break-glass process works

Logging Architecture

All Accounts/Subscriptions

    ├── CloudTrail / Activity Logs ──→ Central Log Archive
    ├── VPC Flow Logs ──────────────→ Central Log Archive
    ├── Application Logs ───────────→ Central Log Analytics
    ├── DNS Query Logs ─────────────→ Central Log Archive
    └── GuardDuty / Defender ───────→ Security Account + SIEM

Retention Policy

Log TypeHot StorageWarm StorageArchiveCompliance Driver
CloudTrail / Activity90 days1 year7 yearsSOC 2, SOX
VPC Flow Logs30 days6 months3 yearsPCI DSS
Application logs30 days6 months1 yearDebugging
Security alerts90 days1 year7 yearsSOC 2, HIPAA
DNS Query Logs30 days6 months1 yearThreat hunting

Tagging Strategy

Every resource must be tagged. Non-negotiable for cost allocation.

Tag KeyRequiredExampleEnforcement
EnvironmentYesprod, staging, devSCP/Policy: deny untagged
ApplicationYesorder-serviceSCP/Policy: deny untagged
OwnerYesplatform-teamSCP/Policy: deny untagged
CostCenterYesCC-1234SCP/Policy: deny untagged
DataClassificationYesconfidential, internal, publicSCP/Policy: deny untagged
ManagedByYesterraform, manualAdvisory (audit mode)
BackupConditionaldaily, weekly, noneBased on environment

Cost Management

ControlImplementationAlert Threshold
Per-account budgetAWS Budgets / Azure Cost Management80% of monthly target
Anomaly detectionAWS Cost Anomaly Detection / Azure Anomaly Alerts> 20% spike vs baseline
Sandbox auto-cleanupLambda/Function to delete resources > 30 daysAuto-terminate
Reserved capacity trackingMonthly utilization report< 80% utilization
Tag compliance reportWeekly untagged resource report> 5% untagged

Reference Implementations

CloudFrameworkWhat It Deploys
AWSControl TowerMulti-account, guardrails, SSO
AWSLanding Zone AcceleratorNetworking, security, logging
AzureCloud Adoption FrameworkManagement groups, policies, connectivity
AzureEnterprise-Scale (ALZ)Full landing zone via Bicep/Terraform
GCPCloud Foundation ToolkitOrg structure, VPC, IAM

Checklist

  • Account/subscription structure designed with isolation boundaries
  • Hub-and-spoke networking deployed with non-overlapping CIDRs
  • IP addressing plan reserves 10x current needs
  • Subnet strategy defined (web/app/data/management tiers)
  • Hybrid connectivity established (VPN or Direct Connect/ExpressRoute)
  • Preventive guardrails (SCPs/Policies) blocking dangerous actions
  • Detective controls enabled (GuardDuty/Defender, Config/Policy audit)
  • Centralized logging flowing to security account
  • Log retention policies aligned with compliance requirements
  • Tagging strategy enforced via policy (deny untagged resources)
  • Break-glass access procedure documented and tested quarterly
  • Cost budgets and alerts configured per account
  • Sandbox accounts available with automatic cleanup
  • DNS architecture designed (split-horizon if needed)
  • Terraform/IaC modules created for workload provisioning

:::note[Source] This guide is derived from operational intelligence at Garnet Grid Consulting. For cloud foundation consulting, visit garnetgrid.com. :::

Jakub Dimitri Rezayev
Jakub Dimitri Rezayev
Founder & Chief Architect • Garnet Grid Consulting

Jakub holds an M.S. in Customer Intelligence & Analytics and a B.S. in Finance & Computer Science from Pace University. With deep expertise spanning D365 F&O, Azure, Power BI, and AI/ML systems, he architects enterprise solutions that bridge legacy systems and modern technology — and has led multi-million dollar ERP implementations for Fortune 500 supply chains.

View Full Profile →