CMMC Phase 2 enforcement begins November 2026. See how to get certified →

Resources
NIST 800-171 CONTROLS

NIST 800-171 to Cloud Control Mapping: AWS, Azure, and GCP

Complete mapping of all 110 NIST 800-171 Rev 2 controls to specific cloud configuration requirements across AWS, Azure, and GCP. Use this reference to understand exactly what each control requires in your cloud environment.

NIST 800-171 controlscloud compliance mappingCMMC technical controlsAWS complianceAzure complianceGCP compliance

How to Use This Reference

This document maps each NIST 800-171 Rev 2 control to the specific cloud configuration requirements that satisfy it across AWS, Azure, and GCP. Use it to:

  • Understand exactly what each control requires in your cloud environment
  • Identify which cloud services and configurations are in scope for each control family
  • Prepare for your CMMC Level 2 C3PAO assessment
  • Configure automated monitoring rules for continuous compliance

Control families covered: AC, AT, AU, CM, IA, IR, MA, MP, PS, PE, RA, CA, SC, SI

Access Control (AC) — 22 Controls

AC.1.001 — Limit system access to authorized users

Requirement: Only authorized users, processes, and devices may access organizational systems.

PlatformImplementationServices
AWSIAM policies, SCPs, resource-based policiesIAM, Organizations
AzureAzure AD RBAC, Conditional Access, PIMAzure AD, Management Groups
GCPIAM roles, Organization Policies, VPC Service ControlsCloud IAM, Resource Manager

Common findings: IAM users without role assignments, over-broad IAM policies, missing SCPs at account level

AC.1.002 — Limit system access to transactions and functions authorized users are permitted to execute

Requirement: Authorization for access is based on principle of least privilege.

PlatformImplementationServices
AWSLeast-privilege IAM policies, permission boundaries, Access AnalyzerIAM, Access Analyzer
AzureCustom RBAC roles, PIM just-in-time accessAzure AD, PIM
GCPPredefined and custom IAM roles, conditionsCloud IAM

Common findings: AdministratorAccess attached to non-admin users, wildcard actions in IAM policies, unused privileged roles not revoked

AC.2.005 — Provide privacy and security notices consistent with CUI rules

Requirement: Privacy and security notices displayed on system banners at login.

PlatformImplementationServices
AWSLogin banner configuration (console)AWS Organizations console settings
AzureCustom branding with login messageAzure AD custom branding
GCPLogin message configurationAdmin console

AC.2.006 — Limit use of portable storage devices on external systems

Requirement: Controls on use of portable storage with organizational systems.

Primarily an endpoint control; cloud implementation focuses on S3/Blob/GCS transfer policies and data loss prevention rules.

AC.2.007 — Employ the principle of least privilege, including for specific security functions and privileged accounts

Requirement: Privileged access is limited to only required permissions.

PlatformImplementationServices
AWSPermission boundaries, IAM Access Analyzer, privilege monitoringIAM, Security Hub
AzurePIM for privileged roles, Privileged Identity ManagementAzure AD PIM
GCPOrganization Policy constraints, IAM RecommenderCloud IAM, Policy Intelligence

Common findings: Overly permissive IAM roles, persistent privileged access (should be just-in-time), service accounts with owner-level access

AC.2.008 — Use non-privileged accounts or roles when accessing non-security functions

Requirement: Privileged users use non-privileged accounts for non-administrative functions.

PlatformImplementationServices
AWSSeparate IAM users for admin vs. standard access, MFA on privileged accountsIAM
AzureSeparate admin accounts, conditional access requiring MFA for admin rolesAzure AD
GCPSeparate service accounts, OS Login for privileged accessCloud IAM, OS Login

AC.2.009 — Limit unsuccessful logon attempts

Requirement: Limit consecutive failed authentication attempts.

PlatformImplementationServices
AWSAccount lockout via AWS WAF (for web apps), Cognito (for application auth)WAF, Cognito
AzureSmart Lockout in Azure AD, Conditional Access sign-in risk policiesAzure AD
GCPLogin attempt limits via Identity PlatformCloud Identity, Identity Platform

AC.2.010 — Use session lock with pattern-hiding displays after period of inactivity

Requirement: Session lock after defined inactivity period.

Primarily enforced at the application and endpoint level. Cloud console sessions implement automatic timeout — AWS console: 1-hour inactivity timeout; Azure portal: configurable inactivity timeout.

AC.2.011 — Authorize wireless access prior to allowing such connections

Requirement: Wireless connections authorized before allowing network access.

Cloud implementation: wireless network security is not directly applicable to cloud environments. The corresponding cloud control is VPC/VNet access authorization and guest network isolation.

AC.2.012 — Control the flow of CUI in accordance with approved authorizations

Requirement: Information flow enforcement based on approved authorizations.

PlatformImplementationServices
AWSVPC security groups, NACLs, VPC endpoints, PrivateLink, S3 bucket policiesVPC, S3, PrivateLink
AzureNSGs, Private Endpoints, Service Endpoints, Azure FirewallVNet, Private Link
GCPVPC firewall rules, VPC Service Controls, Private Google AccessVPC, VPC Service Controls

Common findings: Security groups with overly permissive inbound rules (0.0.0.0/0), S3 buckets without access restrictions, missing VPC endpoint policies

AC.2.013 — Monitor and control remote access sessions

Requirement: Remote access sessions are monitored and controlled.

PlatformImplementationServices
AWSCloudTrail logging of API calls, VPN/Direct Connect monitoring, SSM Session Manager loggingCloudTrail, SSM, VPN
AzureAzure Bastion with session recording, conditional access, sign-in logsAzure Bastion, Azure AD
GCPCloud Audit Logs, IAP TCP tunneling with logging, BeyondCorpCloud Audit Logs, IAP

AC.2.014 — Employ cryptographic mechanisms to protect the confidentiality of remote access sessions

Requirement: TLS/cryptographic protection for all remote access.

PlatformImplementationServices
AWSTLS 1.2+ enforcement on load balancers, ACM certificates, API Gateway TLS policiesALB, ACM, API Gateway
AzureApp Gateway TLS policy, minimum TLS version enforcementApp Service, App Gateway
GCPHTTPS load balancer SSL policies, minimum TLS version enforcementCloud Load Balancing

AC.2.015 — Route remote access via managed access control points

Requirement: Remote access flows through managed, controlled access points.

PlatformImplementationServices
AWSDirect Connect, Site-to-Site VPN, AWS SSO through centralized IdPVPN, Direct Connect, SSO
AzureAzure VPN Gateway, ExpressRoute, Azure AD Application ProxyVPN Gateway, ExpressRoute
GCPCloud VPN, Cloud Interconnect, Identity-Aware ProxyCloud VPN, IAP

AC.2.016 — Control the flow of CUI in accordance with approved authorizations

See AC.2.012 — data flow control. AC.2.016 specifically addresses CUI-tagged data flows.

AC.3.017 — Separate the duties of individuals to reduce the risk of malevolent activity

Requirement: Separation of duties controls prevent single individuals from having all permissions needed to execute unauthorized actions.

PlatformImplementationServices
AWSSeparate IAM roles for different functions, multi-account organization structure, approval workflowsIAM, Organizations, CodePipeline
AzureAzure AD role separation, Privileged Identity Management with approval workflowsAzure AD, PIM
GCPSeparate service accounts per function, Binary Authorization for deploymentCloud IAM, Binary Authorization

AC.3.018 — Prevent non-privileged users from executing privileged functions and capture the execution of such functions in audit logs

Requirement: Privilege escalation controlled and logged.

PlatformImplementationServices
AWSCloudTrail logging of privileged actions, IAM policy restrictions on sts:AssumeRoleCloudTrail, IAM
AzureAzure AD PIM activation logging, privileged role activation auditAzure AD PIM
GCPAdmin Activity audit logs, privilege escalation loggingCloud Audit Logs

AC.3.019 — Terminate sessions after defined conditions

Requirement: Automatic session termination after conditions are met.

PlatformImplementationServices
AWSIAM policy with condition time limits, Cognito token expiration, Lambda session handlingIAM, Cognito
AzureConditional Access token lifetime policies, session lifetime controlsAzure AD Conditional Access
GCPIdentity Platform session timeout configurationCloud Identity Platform

AC.3.020 — Control connection of mobile devices

Requirement: Mobile device connections to organizational systems are controlled.

Cloud implementation: MDM integration for cloud console access, Conditional Access requiring compliant device status for cloud management plane access.

AC.3.021 — Authorize remote execution of privileged commands via remote access only for documented operational needs

Requirement: Remote execution of privileged commands limited to operational needs.

PlatformImplementationServices
AWSSSM Session Manager with session logging and role-based access, restricted IAM for remote executionSSM, IAM
AzureAzure Bastion for privileged remote access, just-in-time VM accessAzure Bastion, Defender for Cloud
GCPOS Login with granular access, IAP TCP tunneling with loggingOS Login, IAP

AC.3.022 — Use encryption to protect CUI during transmission unless protected by alternative physical safeguards

Requirement: All CUI transmitted over open networks is encrypted.

PlatformImplementationServices
AWSTLS enforcement on all endpoints, S3 in-transit encryption enforcement via bucket policyACM, S3, ALB, CloudFront
AzureHTTPS-only enforcement, Azure Storage secure transfer requiredApp Service, Azure Storage
GCPHTTPS enforcement, Google-managed in-transit encryptionCloud Load Balancing, Cloud Storage

Common findings: S3 bucket policies missing aws:SecureTransport condition, load balancers allowing HTTP, APIs without TLS enforcement

Audit and Accountability (AU) — 9 Controls

AU.2.041 — Ensure system activities can be associated with individual users

Requirement: Audit events are attributable to individual users.

PlatformImplementationServices
AWSCloudTrail with user identity in every event, IAM user vs. assumed role trackingCloudTrail
AzureAzure Activity Log with user identity, Azure AD sign-in logsActivity Log, Azure AD
GCPCloud Audit Logs with principal (user/service account) in every log entryCloud Audit Logs

Common findings: Shared IAM users (no individual attribution), missing CloudTrail in some regions, data plane events not logged

AU.2.042 — Create and retain system audit logs and records to the extent needed to enable monitoring, analysis, investigation, and reporting of unlawful or unauthorized activity

Requirement: Audit logs retained for sufficient period (DoD requires 3 years).

PlatformImplementationServices
AWSCloudTrail logs to S3 with 3-year lifecycle policy, CloudWatch Logs retention settingsCloudTrail, S3, CloudWatch Logs
AzureLog Analytics workspace retention (3 years), Diagnostic Settings to Storage AccountLog Analytics, Azure Monitor
GCPCloud Logging retention rules, log exports to Cloud StorageCloud Logging

Common findings (73% of environments): Log retention set to default (90 days or less), CloudTrail not enabled in all regions, log integrity validation disabled

AU.2.043 — Review and update logged events

Requirement: Regularly review logged events to ensure appropriate coverage.

Operational control — PolicyCortex automates continuous review of log coverage and alerts on logging gaps.

AU.3.045 — Review audit logs to identify and investigate anomalous activity

Requirement: Audit log analysis to detect anomalous activity.

PlatformImplementationServices
AWSGuardDuty for threat detection, Security Hub for aggregation, CloudWatch Insights for analysisGuardDuty, Security Hub, CloudWatch
AzureMicrosoft Sentinel for SIEM/SOAR, Defender for Cloud alertsSentinel, Defender for Cloud
GCPSecurity Command Center, Event Threat Detection, Chronicle integrationSCC, Chronicle

AU.3.046 — Alert in the event of an audit logging process failure

Requirement: Alert when audit logging process fails or stops.

PlatformImplementationServices
AWSCloudWatch alarm on CloudTrail metric filter for logging stoppedCloudWatch, CloudTrail
AzureAzure Monitor alert on Log Analytics heartbeatAzure Monitor
GCPCloud Monitoring alert on logging export errorsCloud Monitoring

AU.3.048 — Collect audit information (e.g., logs) into one or more central repositories

Requirement: Centralized log management.

PlatformImplementationServices
AWSCloudTrail Organization Trail, centralized CloudWatch Logs, Security LakeCloudTrail, CloudWatch, Security Lake
AzureCentral Log Analytics workspace, Azure Monitor at management group levelLog Analytics, Azure Monitor
GCPAggregated log sinks at organization levelCloud Logging, BigQuery

Common findings: Per-account logging without aggregation, no central SIEM, logs in multiple locations without correlation

AU.3.049 — Protect audit information and audit tools from unauthorized access, modification, and deletion

Requirement: Audit logs are protected from tampering.

PlatformImplementationServices
AWSCloudTrail log file validation, S3 Object Lock for log buckets, MFA DeleteCloudTrail, S3
AzureLog Analytics immutability, Write Once storage for archive logsLog Analytics, Azure Storage
GCPCloud Logging write-protected audit logs, CMEK for log storageCloud Logging

AU.3.050 — Limit management of audit logging to a subset of privileged users

Requirement: Only authorized privileged users can modify audit log configurations.

PlatformImplementationServices
AWSSCP denying cloudtrail:StopLogging and cloudtrail:DeleteTrail for non-admin accountsOrganizations SCPs
AzureAzure Policy deny effect on diagnostic settings modificationAzure Policy
GCPOrganization Policy constraints on audit log configurationOrganization Policy

AU.3.051 — Correlate audit record review, analysis, and reporting processes for investigation

Requirement: Audit records from multiple sources can be correlated.

Addressed by centralized logging and SIEM integration (AU.3.048). For CMMC assessment evidence, PolicyCortex provides correlated audit records across all control families.

Configuration Management (CM) — 9 Controls

CM.2.061 — Establish and maintain baseline configurations and inventories of organizational systems

Requirement: Documented baseline configurations for all in-scope systems.

PlatformImplementationServices
AWSAWS Config baseline rules, Systems Manager Inventory, IaC (Terraform/CDK)AWS Config, SSM
AzureAzure Policy baselines, Azure Resource Graph inventoryAzure Policy, Resource Graph
GCPConfig Connector, Organization Policy constraintsConfig Connector

Common findings: Resources created outside IaC pipelines (63% of environments), no automated baseline enforcement (71%), configuration drift from documented baseline

CM.2.062 — Establish and maintain security configuration settings

Requirement: Security configuration settings documented and enforced.

PlatformImplementationServices
AWSAWS Config managed rules for security baseline, Security Hub standardsAWS Config, Security Hub
AzureAzure Security Benchmark via Defender for CloudDefender for Cloud
GCPSecurity Command Center security health analytics, Organization PoliciesSCC, Organization Policy

CM.2.063 — Address and document information security-relevant software and firmware updates

Requirement: Patching and updates managed systematically.

PlatformImplementationServices
AWSSystems Manager Patch Manager, EC2 Image Builder for AMI updatesSSM Patch Manager, EC2 Image Builder
AzureAzure Update Manager, Defender for Cloud patching recommendationsAzure Update Manager
GCPOS Patch Management, Container Analysis for container vulnerabilitiesOS Config, Artifact Registry

CM.2.064 — Establish and enforce security configuration settings for information technology products employed in organizational systems

Requirement: Vendor-recommended security configurations applied.

Assessed against CIS Benchmarks for AWS/Azure/GCP and platform-specific security baselines.

CM.2.065 — Track, review, approve, and log changes to systems

Requirement: Change management process for system modifications.

PlatformImplementationServices
AWSCloudTrail for change tracking, Config rules for change validation, IAM conditions for approval gatesCloudTrail, Config
AzureActivity Log for all changes, Azure DevOps approval gates, RBAC change controlsActivity Log, Azure DevOps
GCPCloud Audit Logs for all resource changes, Binary Authorization for deployment approvalsCloud Audit Logs, Binary Authorization

Common findings: Change management policy not applied to cloud configuration changes (58% of environments)

Identification and Authentication (IA) — 11 Controls

IA.1.076 — Identify organizational users, processes acting on behalf of users, and devices

Requirement: All system entities have unique identifiers.

PlatformImplementationServices
AWSIAM users and roles with unique IDs, VPC endpoint IDs for network identityIAM
AzureAzure AD user/service principal unique ObjectIDsAzure AD
GCPGoogle Identity unique user IDs, service account email addressesCloud IAM

IA.1.077 — Authenticate organizational users, processes acting on behalf of users, and devices before allowing access

Requirement: Authentication required for all access.

PlatformImplementationServices
AWSIAM credential authentication (password + MFA or access keys + session tokens)IAM, STS
AzureAzure AD authentication with MFA enforcementAzure AD
GCPGoogle Identity authentication, Workload Identity FederationCloud IAM

IA.2.078 — Enforce a minimum password complexity and change requirements

Requirement: Password policy enforces complexity requirements.

PlatformImplementationServices
AWSIAM password policy (min 14 chars, complexity required per NIST 800-171)IAM password policy
AzureAzure AD password complexity requirements, Banned Password ListAzure AD
GCPOrganization-level password policies via Admin consoleCloud Identity

IA.2.079 — Prohibit password reuse for a specified number of generations

Requirement: Password history enforced to prevent reuse.

PlatformImplementationServices
AWSIAM password policy: password reuse prevention (24 generations)IAM password policy
AzureAzure AD password history enforcementAzure AD
GCPPassword reuse prevention via Admin consoleCloud Identity

IA.2.080 — Allow temporary password use for system logons with immediate change requirement

Requirement: Temporary passwords expire and require change on first use.

Addressed by IdP configuration — IAM, Azure AD, and Google Identity all support forced password reset on first login.

IA.2.081 — Employ cryptographically-secured passwords

Requirement: Passwords stored using cryptographically secure hashing.

Addressed by platform identity providers — AWS IAM, Azure AD, and Google Identity all use secure password hashing. Assessed for any custom authentication implementations.

IA.3.082 — Employ multifactor authentication for local and network access to privileged accounts

Requirement: MFA required for all privileged account access.

PlatformImplementationServices
AWSMFA required for console access via IAM policy condition (aws:MultiFactorAuthPresent), root account MFA mandatoryIAM, root account
AzureConditional Access MFA for privileged roles, MFA Registration PolicyAzure AD Conditional Access
GCP2-Step Verification enforcement via Admin console, 2SV for privileged identitiesCloud Identity

Common findings (61% of environments): IAM users with console access and no MFA enforcement, root account without MFA, MFA policy exists but not enforced via IAM condition

IA.3.083 — Employ multifactor authentication for local and network access to non-privileged accounts

Requirement: MFA required for all user accounts (not just privileged).

PlatformImplementationServices
AWSIAM policy condition requiring MFA for all users, enforcement SCPIAM, Organizations
AzureConditional Access MFA for all usersAzure AD Conditional Access
GCP2-Step Verification enforcement for all usersCloud Identity Admin

IA.3.085 — Employ replay-resistant authentication mechanisms for network access to privileged and non-privileged accounts

Requirement: Authentication mechanisms resist replay attacks.

Addressed by platform-level authentication — all major cloud providers use modern authentication protocols (OAuth 2.0, SAML 2.0) that include replay protection mechanisms.

IA.3.086 — Disable identifiers after a defined period of inactivity

Requirement: Unused accounts are disabled.

PlatformImplementationServices
AWSIAM credential report + AWS Config rule for unused credentials (90+ days), automated disableIAM Credential Report, Config
AzureAzure AD access reviews, stale account detectionAzure AD Access Reviews
GCPPolicy Intelligence: unused access recommendationsCloud IAM, Policy Intelligence

Common findings (52% of environments): Active IAM users with last activity > 90 days, unused service account keys not rotated or disabled

System and Communications Protection (SC) — 16 Controls

SC.1.175 — Monitor, control, and protect communications at external boundaries and key internal boundaries

Requirement: Network communications monitored and controlled at boundaries.

PlatformImplementationServices
AWSVPC security groups, NACLs, AWS Network Firewall, VPC Flow LogsVPC, Network Firewall
AzureNSGs, Azure Firewall, DDoS Protection, NSG Flow LogsVNet, Azure Firewall
GCPVPC firewall rules, Cloud Armor, VPC Flow LogsVPC, Cloud Armor

Common findings (52% of environments): VPC Flow Logs not enabled, no WAF on externally accessible applications (67%), overly permissive security groups (58%)

SC.1.176 — Implement subnetworks for publicly accessible system components

Requirement: Publicly accessible systems separated in dedicated subnets.

PlatformImplementationServices
AWSPublic/private subnet architecture, internet-facing resources in public subnets onlyVPC
AzurePublic subnet with NSG, Application Gateway/WAF in DMZ subnetVNet
GCPPublic subnet isolation, external load balancer in separate network tierVPC

SC.3.177 — Employ FIPS-validated cryptography for CUI protection

Requirement: FIPS 140-2 validated cryptographic modules for CUI.

PlatformImplementationServices
AWSFIPS endpoints available for most services (use *.fips.amazonaws.com endpoints), GovCloud defaultService endpoints, GovCloud
AzureAzure Government FIPS compliance, FIPS-validated modules in Gov regionsAzure Government
GCPFIPS 140-2 validated cryptography available; GCP Assured Workloads for complianceAssured Workloads

SC.3.178 — Prohibit remote activation of collaborative computing devices and provide indication of use

Requirement: Remote activation of cameras, mics prevented; presence indicators shown.

Primarily an endpoint control. Cloud assessment context: ensure no cloud-connected collaboration tools (video APIs, etc.) are configured to enable recording without participant indication.

SC.3.183 — Deny network communications traffic by default and allow by exception

Requirement: Default deny network policy.

PlatformImplementationServices
AWSSecurity group default deny, NACL default deny for inboundVPC Security Groups, NACLs
AzureNSG default deny rule (priority 65500 DenyAllInBound)NSGs
GCPVPC default firewall rules — implied deny for ingressVPC Firewall

Common findings: Security groups with 0.0.0.0/0 allow rules for broad port ranges, missing explicit deny rules

System and Information Integrity (SI) — 7 Controls

SI.1.210 — Identify, report, and correct information and information system flaws in a timely manner

Requirement: Vulnerability management and patching.

PlatformImplementationServices
AWSInspector for vulnerability scanning, Systems Manager Patch ManagerInspector, SSM
AzureDefender for Cloud vulnerability assessment, Microsoft Defender for EndpointDefender for Cloud
GCPSecurity Command Center vulnerabilities, Container AnalysisSCC, Artifact Registry

SI.1.211 — Provide protection from malicious code at appropriate locations

Requirement: Anti-malware controls deployed.

PlatformImplementationServices
AWSGuardDuty malware protection, Inspector agent for EC2GuardDuty, Inspector
AzureDefender for Servers (Microsoft Defender Antivirus), Defender for ContainersDefender for Cloud
GCPShielded VMs, Container Analysis, Security Command Center threatsSCC, Shielded VMs

SI.2.214 — Monitor system security alerts and advisories and take action in response

Requirement: Security advisories monitored and acted upon.

PlatformImplementationServices
AWSSecurity Hub aggregating GuardDuty, Inspector, Config findingsSecurity Hub
AzureDefender for Cloud security alertsDefender for Cloud
GCPSecurity Command Center findingsSCC

SI.2.216 — Monitor organizational systems to detect attacks and indicators of compromise

Requirement: Continuous monitoring for attacks and IOCs.

PlatformImplementationServices
AWSGuardDuty, VPC Flow Logs analysis, CloudTrail anomaly detectionGuardDuty, CloudTrail
AzureMicrosoft Sentinel, Defender for CloudSentinel, Defender for Cloud
GCPEvent Threat Detection, Chronicle SIEMSCC, Chronicle

Incident Response (IR) — 3 Controls

IR.2.092 — Establish an operational incident-handling capability

Requirement: Incident response capability exists and is operational.

Addressed through DFARS 72-hour reporting compliance and documented IR procedures. PolicyCortex supports incident detection, documentation, and timeline tracking.

IR.2.093 — Track, document, and report incidents to designated officials

Requirement: Incidents tracked and reported per requirements.

For DFARS-covered incidents: report to DoD via DIBNet Portal within 72 hours. PolicyCortex generates structured incident documentation for DIBNet submission.

IR.3.098 — Test the organizational incident response capability

Requirement: IR capability tested periodically.

Tabletop exercise and simulation requirement — PolicyCortex provides incident scenario simulation data and response timeline analytics.

Download the Complete Mapping

The downloadable version of this mapping includes:

  • All 110 controls with detailed implementation guidance
  • Specific configuration examples for each cloud provider
  • PolicyCortex automation coverage indicators
  • Assessment evidence requirements per control

Download Full NIST 800-171 Control Mapping (PDF)

Ready to automate compliance enforcement?

PolicyCortex continuously maps your cloud environment against CMMC, NIST 800-171, and FedRAMP controls — evidence assembles itself.