Skip to content

Government Cloud

FedRAMP High and Impact Level 4-5 compliant architecture for government workloads.


Government organizations require the highest levels of security and compliance. This architecture covers deployments in Azure Government regions with FedRAMP High authorization and support for Impact Level 4 (IL4) and IL5 workloads, including Controlled Unclassified Information (CUI) and National Security Systems.

After completing this section, you will be able to:

  • ✅ Design FedRAMP High compliant architectures
  • ✅ Implement IL4/IL5 workload isolation
  • ✅ Configure compliant connectivity patterns
  • ✅ Meet NIST 800-53 control requirements

RegionLocationIL SupportServices
US Gov VirginiaVirginia, USAIL2, IL4, IL5Full
US Gov TexasTexas, USAIL2, IL4, IL5Full
US Gov ArizonaArizona, USAIL2, IL4, IL5Full
US DoD CentralIowa, USAIL5, IL6DoD only
US DoD EastVirginia, USAIL5, IL6DoD only

Control FamilyAzure Implementation
AC - Access ControlEntra ID, RBAC, PIM
AU - AuditLog Analytics, Sentinel
CA - AssessmentDefender for Cloud
CM - ConfigurationAzure Policy, Blueprints
CP - ContingencyBackup, Site Recovery
IA - IdentificationEntra ID, MFA, CAC/PIV
IR - Incident ResponseSentinel, Playbooks
SC - System ProtectionNSG, Firewall, Encryption
SI - System IntegrityDefender, Update Management
# Azure Policy initiative for FedRAMP High
policyAssignment:
name: "FedRAMP-High-Baseline"
scope: "/subscriptions/{gov-subscription}"
policyDefinitionId: "/providers/Microsoft.Authorization/policySetDefinitions/d5264498-16f4-418a-b659-fa7ef418175f"
parameters:
logAnalyticsWorkspaceId: "/subscriptions/{sub}/resourceGroups/mgmt-rg/providers/Microsoft.OperationalInsights/workspaces/gov-logs"

For Controlled Unclassified Information (CUI):

RequirementImplementation
Data EncryptionTDE + CMK (FIPS 140-2)
Access ControlCAC/PIV + MFA
NetworkDedicated VNet, ExpressRoute
MonitoringFedRAMP audit logging

For National Security Systems and higher-sensitivity CUI:

RequirementImplementation
Complete IsolationDedicated VNet, no peering
HSM KeysDedicated HSM (FIPS 140-2 L3)
Access ControlCAC/PIV + location-based
InternetBlocked (air-gap capable)
PersonnelUS Persons only

Terminal window
# Configure ExpressRoute for Government
New-AzExpressRouteCircuit `
-Name "gov-expressroute" `
-ResourceGroupName "connectivity-rg" `
-Location "usgovvirginia" `
-SkuTier "Premium" `
-SkuFamily "MeteredData" `
-ServiceProviderName "AT&T Netbond" `
-PeeringLocation "Washington DC" `
-BandwidthInMbps 1000
graph TB
    subgraph GovDC ["Government Data Center"]
        A[Agency Network]
        B[Classified Network]
    end

    subgraph Azure ["Azure Government"]
        C[ExpressRoute Gateway]
        D[Hub VNet]
        E[IL4 VNet]
        F[IL5 VNet]
    end

    A -->|ExpressRoute| C
    B -.->|❌ No Connection| F
    C --> D
    D -->|Peering| E
    D -.->|Isolated| F

    style B fill:#FFE4E1,stroke:#D13438
    style F fill:#FFE4E1,stroke:#D13438

Terminal window
# Configure certificate-based authentication
New-MgOrganizationCertificateBasedAuthConfiguration `
-OrganizationId "{tenant-id}" `
-CertificateAuthorities @(
@{
IsRootAuthority = $true
Certificate = [Convert]::ToBase64String((Get-Content "dod-root-ca.cer" -Encoding Byte))
}
)
{
"displayName": "Require CAC/PIV for Government Apps",
"conditions": {
"applications": {
"includeApplications": ["All"]
},
"users": {
"includeGroups": ["{gov-users-group}"]
}
},
"grantControls": {
"builtInControls": [
"mfa",
"compliantDevice"
],
"authenticationStrength": {
"@odata.type": "#microsoft.graph.authenticationStrengthPolicy",
"requirementsSatisfied": "mfa",
"allowedCombinations": [
"x509CertificateSingleFactor"
]
}
}
}

// FISMA compliance dashboard query
SecurityBaseline
| where TimeGenerated > ago(30d)
| summarize
Compliant = countif(ComplianceState == "Compliant"),
NonCompliant = countif(ComplianceState == "NonCompliant")
by ControlFamily
| extend ComplianceRate = round(100.0 * Compliant / (Compliant + NonCompliant), 2)
| order by ComplianceRate asc

Plan of Action and Milestones (POA&M) for non-compliant controls:

Terminal window
# Generate POA&M from Defender findings
$findings = Get-AzSecurityAssessment | Where-Object { $_.Properties.Status.Code -eq "Unhealthy" }
$poam = $findings | ForEach-Object {
[PSCustomObject]@{
ControlId = $_.Properties.Metadata.AssessmentType
Finding = $_.Properties.DisplayName
Resource = $_.Properties.ResourceDetails.Id
Remediation = $_.Properties.Metadata.RemediationDescription
DueDate = (Get-Date).AddDays(30)
}
}
$poam | Export-Csv "POAM-$(Get-Date -Format 'yyyyMMdd').csv"

  • Obtain Azure Government subscription
  • Complete FedRAMP authorization package
  • Deploy Hub-Spoke network topology
  • Configure ExpressRoute to agency network
  • Implement CAC/PIV authentication
  • Deploy Azure Policy FedRAMP initiative
  • Configure Log Analytics for FISMA
  • Enable Defender for Cloud Government
  • Create IL4/IL5 workload subscriptions
  • Implement continuous monitoring


Reference: Azure Government Documentation — Microsoft Learn