CMMC Level 2 Implementation Guide June 11, 2026 · 13 min read

How to Actually Implement CMMC Level 2 Identification and Authentication: A Practitioner's Guide

The Identification and Authentication domain is where CMMC gets personal. Every person, process, and device that touches a system containing CUI needs to be identified and authenticated in a way the standard can verify. MFA, password controls, and account lifecycle management are the core of this domain. All 11 practices are covered here with plain-language explanations and real implementation guidance.

Why IA Is One of the Most Assessed Domains

Weak authentication is the entry point for the majority of breaches. Compromised credentials drive most ransomware incidents, most data exfiltration events, and most supply chain compromises. CMMC assessors know this, which means IA practices get close scrutiny. The good news is that most of the IA domain can be addressed through a combination of Entra ID (Azure AD), Conditional Access policies, and a solid password policy enforced via Group Policy or Intune.

If your organization is already on Microsoft 365 Business Premium or higher, you likely have the tools to satisfy every IA practice without purchasing additional products. The gap is almost always configuration and documentation, not tooling.

Before implementing: Do a complete account audit first. Every account in Active Directory or Entra ID that has access to in-scope systems needs to be reviewed. Stale accounts, shared accounts, and accounts with no associated person are immediate findings. Cleaning up the account inventory is the prerequisite for everything else in this domain.

Practices 3.5.1 and 3.5.2 — Identify and Authenticate Users, Processes, and Devices

3.5.1 – 3.5.2

Every user gets a unique identity. Every identity gets authenticated before access is granted.

These two practices are foundational. Practice 3.5.1 requires that every user, process acting on behalf of a user, and device that accesses in-scope systems has a unique identifier. Practice 3.5.2 requires those identifiers to be authenticated before access is granted.

How to implement:

Common mistake: Shared admin accounts. "We all use the same admin account" is an immediate finding that also breaks audit logging (you cannot tell which administrator took which action), separation of duties, and privileged access management. Every administrator needs their own privileged account.

Practice 3.5.3 — Multi-Factor Authentication

3.5.3

MFA is required. For privileged accounts, always. For all accounts, for any network access.

This is the highest-impact single practice in the IA domain. Practice 3.5.3 requires MFA for local access to privileged accounts, and for network access to both privileged and non-privileged accounts. In plain terms: anyone logging in over the network needs MFA, and administrators need MFA even when sitting at a local console.

How to implement:

Common mistake: MFA deployed for cloud apps but not for on-premise systems or VPN. An assessor will trace the full authentication path. If a user can reach in-scope systems by connecting to VPN without MFA, even if the cloud apps require it, the practice is not fully satisfied.

Practice 3.5.4 — Replay-Resistant Authentication

3.5.4

Authentication credentials must be time-limited or one-time-use. Legacy protocols fail this requirement.

Replay-resistant authentication means an attacker who captures authentication traffic cannot reuse it to gain access. Modern authentication protocols are replay-resistant by design. Legacy protocols often are not.

How to implement:

Common mistake: Old line-of-business applications that require SMTP Auth or Basic Auth to function. These are often overlooked because they're not the primary user-facing systems. Every authentication flow that touches in-scope systems must be evaluated, including automated processes and integrations.

Practices 3.5.5 and 3.5.8 — Prevent Password Reuse

3.5.5 – 3.5.8

Passwords must not be recycled. Minimum 5 generations of history enforced.

Practice 3.5.5 requires using automated tools to prevent reuse of passwords within a minimum number of generations (NIST 800-171 specifies at least five). Practice 3.5.8 explicitly states the prohibition on reuse. They address the same control from two angles and are implemented together.

How to implement:

Common mistake: Setting password history to 5 exactly rather than a higher number. While 5 satisfies the floor, NIST recommends substantially higher history to prevent password rotation abuse. 24 is the right setting, not 5.

Practice 3.5.6 — Disable Inactive Identifiers

3.5.6

Accounts that haven't been used in a defined period must be disabled automatically.

Stale accounts are a persistent attack vector. An account for a former employee or contractor that was never deprovisioned is a ready-made entry point. This practice requires defining an inactivity period and disabling accounts that exceed it.

How to implement:

Common mistake: Having a policy that says inactive accounts will be disabled, but no automated or scheduled process actually enforcing it. An assessor may pull your account list and sort by last login. Accounts with no login in 6-12 months with no documented exception are a finding.

Practice 3.5.7 — Password Complexity and Change Requirements

3.5.7

Passwords must meet defined complexity requirements. New passwords must differ meaningfully from old ones.

This practice requires enforcing minimum password complexity and ensuring new passwords represent a real change, not a trivial variation of the previous password.

How to implement:

Common mistake: Mandatory 90-day password expiration with low complexity requirements. This pattern reliably produces passwords like "Spring2026!" followed by "Summer2026!" Users game predictable complexity + rotation requirements. Long, complex, infrequently rotated passwords with MFA is a stronger outcome than short, simple, frequently rotated ones.

Practice 3.5.9 — Temporary Password Policy

3.5.9

Temporary passwords must require an immediate change at first use.

When a new account is created or a password is reset by helpdesk, the initial temporary password must expire and force a change at the user's first login.

How to implement:

Common mistake: Helpdesk staff setting a standard temporary password (like "Welcome1!") that they tell users verbally but don't force to change. That password is now known to every helpdesk person who's ever reset anyone's account. Force the change at login, every time.

Practice 3.5.10 — Cryptographic Protection of Passwords

3.5.10

Passwords must be stored and transmitted in protected form. Plaintext passwords are never acceptable.

This practice requires that passwords are stored using cryptographic mechanisms (hashing with a salt) and transmitted over encrypted channels. It targets systems that store credentials locally, like applications, databases, and legacy systems.

How to implement:

Common mistake: Overlooking application-level credential stores. The Active Directory is fine, but a legacy line-of-business application that stores usernames and passwords in a local SQL database with MD5 hashes is an immediate finding. Applications in scope need to be reviewed for how they handle credentials.

Practice 3.5.11 — Obscure Authentication Feedback

3.5.11

Authentication systems must not display password characters during entry.

This practice requires that feedback during authentication (password entry) is obscured so that an observer cannot read credentials from the screen. It also extends to error messages, which should not reveal whether a username or a password was incorrect.

How to implement:

Common mistake: Login forms that differentiate between "account not found" and "incorrect password." Developers often add this for usability, but it allows an attacker to enumerate valid usernames by observing which error appears. Generic authentication failure messages are required.

Quick Reference: Tools for IA Implementation

NeedTool OptionsNotes
MFA enforcementMicrosoft Entra ID Conditional Access, Duo Security, OktaEntra ID Conditional Access is included in M365 Business Premium; Duo works well for on-premise and hybrid environments
MFA methodsMicrosoft Authenticator, FIDO2 keys (YubiKey), Windows Hello for BusinessFIDO2 keys are phishing-resistant and the strongest available option; Authenticator app is a good balance of security and usability
Privileged access managementMicrosoft Entra PIM, CyberArk, BeyondTrustEntra PIM is included in Entra ID P2; provides just-in-time admin access with approval workflows
Password policy enforcementGroup Policy, Microsoft Entra Password ProtectionEntra Password Protection pushes banned password lists to on-premise AD and cloud; free for basic functionality
Stale account detectionPowerShell (Search-ADAccount), Entra Identity Governance Access ReviewsPowerShell is free and sufficient for most organizations; Access Reviews requires Entra ID P2
Legacy auth blockingEntra Conditional Access, Exchange Online ProtectionBlock legacy authentication policy template in Conditional Access is a one-step implementation
Password manager (user adoption)1Password, Bitwarden, KeePassA password manager makes long, unique passwords practical for users; reduces password reuse across systems

The MFA exception trap: Many organizations deploy MFA but carve out exceptions for specific users, applications, or IP ranges "just to make it work." Each exception is a potential gap. Document every exception formally, include a business justification and an expiration date, and review exceptions at least quarterly. Assessors will look for exception lists.

Building the Evidence Package

For the IA domain, assessors will typically want to see your Conditional Access policy configuration (screenshots of each policy, its scope, and conditions), evidence that MFA is actively enforced (sign-in logs showing MFA challenges), your password policy settings (GPO or Intune config), an account inventory with a process for periodic review, and documentation of your account provisioning and deprovisioning procedures.

The most important evidence is demonstrating that controls are actually enforced, not just configured. A sign-in log showing users successfully authenticating with MFA is more persuasive than a screenshot of a policy that's set to "report-only" mode.

Need the Policy Document That Covers These Practices?

Our CMMC Level 2 Identification and Authentication Policy template covers all 11 IA practices in formal policy language with fill-in-the-blank placeholders for your organization's MFA methods, password requirements, account lifecycle process, and approved authentication tools.

Download the IA Policy Template →

Frequently Asked Questions

Practice 3.5.3 requires MFA for network access to privileged accounts and for network access to non-privileged accounts. For local access, MFA is required for privileged accounts. In practice, this means any remote or network-based login to any account should use MFA. Most organizations satisfy this using Microsoft Entra ID with Conditional Access policies requiring MFA for all users accessing company resources, regardless of privilege level.
CMMC requires two or more different authentication factors from these categories: something you know (password or PIN), something you have (hardware token, authenticator app, smart card, or security key), and something you are (biometric like fingerprint or face recognition). SMS text messages are technically a second factor but are considered weak due to SIM-swapping attacks. Microsoft Authenticator app, hardware FIDO2 keys (YubiKey), and smart cards all satisfy the requirement. SMS should be avoided if possible.
Practice 3.5.7 requires enforcing minimum password complexity and character change requirements. Current NIST guidance favors length over mandatory character classes, recommending passwords of at least 8 characters minimum, though 12 to 15 characters is a more defensible standard for CMMC. The more critical requirements are prohibiting password reuse for at least five generations (3.5.8), storing passwords in hashed form (3.5.10), and pairing the password policy with MFA so the password alone is not the only control.
Shared accounts used by human users are not permitted for systems in scope. Every person who accesses CUI systems must have a unique, individual account. Service accounts used by applications or automated processes are different and can exist, but they must follow least privilege principles, have strong passwords, and ideally be managed service accounts (MSAs) or group managed service accounts (gMSAs) in Active Directory, which rotate their own passwords automatically without requiring manual intervention.
Replay-resistant authentication (3.5.4) means the authentication mechanism produces credentials that can only be used once or are time-limited, preventing an attacker who captures authentication traffic from reusing it. Kerberos with AES encryption, NTLM v2, TLS-protected authentication flows, FIDO2/WebAuthn, and smart card authentication are all replay-resistant. Legacy protocols like NTLM v1 and HTTP Basic Auth over unencrypted connections are not. Disabling legacy authentication in Entra ID and requiring modern authentication protocols satisfies this practice.

More Implementation Guides in This Series

🔐 Access Controls (AC) Read → ⚙️ Configuration Management (CM) Read → 🚨 Incident Response (IR) Read → 📊 Risk Assessment (RA) Read → 📋 Audit & Accountability (AU) Read → 🛡️ System & Comms Protection (SC) Read → 🔍 System & Info Integrity (SI) Read →
📬

Get CMMC tips and template updates

No spam. Just practical guidance on CMMC compliance and new resources when we publish them.