🚨 CMMC Phase One started November 10! Here's everything you need to know →

How to Implement Password History and Complexity Settings in Azure AD to Meet NIST SP 800-171 REV.2 / CMMC 2.0 Level 2 - Control - IA.L2-3.5.8

Step-by-step guidance to configure password history, complexity and compensating controls in Azure AD and hybrid Active Directory to satisfy NIST SP 800-171 Rev.2 / CMMC 2.0 IA.L2-3.5.8 compliance.

•
April 15, 2026
•
5 min read

Share:

Schedule Your Free Compliance Consultation

Feeling overwhelmed by compliance requirements? Not sure where to start? Get expert guidance tailored to your specific needs in just 15 minutes.

Personalized Compliance Roadmap
Expert Answers to Your Questions
No Obligation, 100% Free

Limited spots available!

This post explains how a small business can implement password history and complexity controls in Azure Active Directory and hybrid Active Directory to meet the intent of NIST SP 800-171 Rev.2 / CMMC 2.0 Level 2 control IA.L2-3.5.8 (authentication and password management), with concrete steps, realistic settings, evidence you can collect, and compensating controls where Azure AD lacks direct settings.

What this control expects and how it maps to Compliance Framework

The Compliance Framework requirement IA.L2-3.5.8 expects organizations to enforce password policies that prevent simple and reused passwords, maintain password history to prevent reuse, and apply complexity and lockout controls to reduce brute-force and credential-stuffing risks. In practical terms you must document and enforce password history and complexity, show configuration evidence, and implement compensating controls (like MFA) where platform limitations exist.

Implementation approach — cloud-only Azure AD vs. hybrid environments

Start by identifying your environment: cloud-only Azure AD tenants and hybrid AD (on-prem Active Directory synced with Azure AD via Azure AD Connect) have different implementation surfaces. For hybrid AD, implement password history/complexity on domain controllers via Group Policy (the canonical place for enforcing history and complexity). For cloud-only tenants, use Azure AD Password Protection (global and custom banned lists), smart lockout behavior, and strong compensating controls such as MFA and Conditional Access because Azure AD does not expose the same granular complexity policy knobs as on-prem AD.

Cloud-only Azure AD — actionable steps

In the Azure portal go to Azure Active Directory → Security → Authentication methods (or Password protection) and enable Azure AD Password Protection. Create and maintain a custom banned password list that includes company names, product names, and commonly used strings; set the enforcement mode to "Enforce" after a testing period. Require MFA for all interactive sign-ins and privileged roles using Conditional Access. Enable Self-Service Password Reset (SSPR) with secure verification, and ensure password reset events are logged to the audit/sign-in logs for evidence. Note: because Azure AD cloud-only doesn't let you change complexity flags or a traditional "history" count, treat the banned-list plus MFA and monitored SSPR as compensating controls and document that design in your compliance artifacts.

Hybrid AD — actionable steps and specific GPO settings

For hybrid environments enforce password policy in Active Directory Domain Services with Group Policy: Computer Configuration → Policies → Windows Settings → Security Settings → Account Policies → Password Policy. Example, practical settings that align with NIST/CMMC expectations for a small business: Enforce password history = 24, Maximum password age = 90 days, Minimum password length = 12, Password must meet complexity requirements = Enabled. Also set Account Lockout Policy: Account lockout threshold = 5 invalid attempts, Account lockout duration = 30 minutes, Reset account lockout counter after = 30 minutes. After applying GPO, capture evidence with tools (gpresult /r on sample workstations, and Get-ADDefaultDomainPasswordPolicy from a domain controller or management box to show the effective domain policy).

Technical detail: agents, monitoring and evidence collection

If you use Azure AD Password Protection for on-prem AD, install the Password Protection proxy and the DC agent on your domain controllers (downloadable from Microsoft docs), register them to your tenant, and confirm the service is enforcing the banned password list on password changes. For collecting evidence: export screenshots of the Azure portal Password Protection settings and custom banned list, export domain password policy via PowerShell (Get-ADDefaultDomainPasswordPolicy), save Group Policy Management Console screenshots for GPOs, capture SSPR and password change audit logs from Azure AD sign-in and audit logs, and preserve Conditional Access policy screenshots that enforce MFA. These artifacts directly demonstrate implementation to an assessor.

Small-business example and scenario

Example: a 30-person engineering consultancy uses hybrid AD with Azure AD Connect. Implementation: set domain GPOs to Enforce password history=24, Minimum length=12, Complexity=Enabled, Max age=90 days, lockout threshold=5. Enable Azure AD Password Protection with a custom banned list containing company and product names, switch enforcement to "Enforce" after 2 weeks of "Audit" mode, and require MFA for all users with Conditional Access for administrative roles and remote access. Result: password reuse is prevented on-prem, banned weak choices are blocked in the cloud, and MFA mitigates the remaining risk for cloud-only authentication flows. Maintain a runbook that shows who approved the policy, test results from audit mode, and periodic review logs to prove ongoing compliance.

Risks of not implementing these controls

Failing to implement password history and complexity controls increases the risk of credential reuse, successful brute-force or credential-stuffing attacks, unauthorized access to controlled unclassified information (CUI), lateral movement inside the network, and eventual data exfiltration. From an audit/compliance perspective, lack of enforceable policy and supporting evidence will result in failing the IA.L2-3.5.8 requirement and may jeopardize contract eligibility with DoD or other regulated customers.

Compliance tips and best practices

Document your decisions: when platform limitations force compensating controls (e.g., no configurable complexity flags in cloud-only Azure AD), write a short decision document mapping the limitation to compensating controls (Password Protection + MFA + SSPR logging) and get it approved by your security officer. Automate evidence collection: schedule exports of Azure AD audit/sign-in logs to a storage account or SIEM for retention and reporting. Train users and enforce password hygiene: communicate password length expectations and banned word lists. Finally, review and tune policies quarterly, and keep the banned-password list updated with brand and product names or new weak-password patterns you discover in your environment.

Summary: to meet NIST SP 800-171 Rev.2 / CMMC 2.0 IA.L2-3.5.8, hybrid environments should enforce history and complexity in Active Directory GPOs and prove the settings with PowerShell/GPO evidence, while cloud-only tenants should enable Azure AD Password Protection, maintain a custom banned list, require MFA via Conditional Access, and document compensating controls and evidence; together these steps reduce credential risk and provide the artifacts you need for compliance.

 

Quick & Simple

Discover Our Cybersecurity Compliance Solutions:

Whether you need to meet and maintain your compliance requirements, help your clients meet them, or verify supplier compliance we have the expertise and solution for you

 CMMC Level 1 Compliance App

CMMC Level 1 Compliance

Become compliant, provide compliance services, or verify partner compliance with CMMC Level 1 Basic Safeguarding of Covered Contractor Information Systems requirements.
 NIST SP 800-171 & CMMC Level 2 Compliance App

NIST SP 800-171 & CMMC Level 2 Compliance

Become compliant, provide compliance services, or verify partner compliance with NIST SP 800-171 and CMMC Level 2 requirements.
 HIPAA Compliance App

HIPAA Compliance

Become compliant, provide compliance services, or verify partner compliance with HIPAA security rule requirements.
 ISO 27001 Compliance App

ISO 27001 Compliance

Become compliant, provide compliance services, or verify partner compliance with ISO 27001 requirements.
 FAR 52.204-21 Compliance App

FAR 52.204-21 Compliance

Become compliant, provide compliance services, or verify partner compliance with FAR 52.204-21 Basic Safeguarding of Covered Contractor Information Systems requirements.
 
Hello! How can we help today? 😃

Chat with Lakeridge

We typically reply within minutes