Security

How to Handle MFA Exceptions Without a Permanent Bypass

Antonio Evans9 min read

A split scene: on the left, a security administrator reviews a dashboard showing a list of accounts with MFA exceptions, each with an expiration date and approver name.
Key points

Key points

  1. 1Grant MFA exceptions only with a named approver, a written reason, and a hard expiration date that the system enforces, not just the calendar.
  2. 2Keep every exception in one register so it can be reviewed, reported, and closed without archaeology.
  3. 3Replace blanket bypasses with the weakest acceptable alternative control, such as a device-bound passkey or network restriction, wherever the account can support it.
  4. 4Review exceptions on a fixed cadence tied to privilege level, and let automatic expiry force a fresh decision instead of a silent renewal.

Why exceptions exist and why they quietly become permanent

Every MFA rollout hits a wall of accounts that cannot enroll. Legacy applications that never prompt for a second factor, service accounts that authenticate non-interactively, break-glass administrators who must survive an identity provider outage, vendors mid-onboarding, and users who lose a device all produce pressure to "just exclude this one." That pressure is legitimate. MFA is one of the strongest available controls, and organizations should push enrollment hard before granting relief, but a workforce built on exceptions and no governance ends up with an authentication policy that exists mostly on paper.

The failure mode is well characterized. A glossary definition of an MFA exception from the Non-Human Identity Management Group describes exactly what happens when exceptions are not owned, time-bound, and reviewed: they become permanent security gaps rather than controlled risk decisions NHI Mgmt Group. The same source notes that the most common misapplication is leaving an exception active after the original condition has changed, which occurs when no owner is assigned to review the access path.

That risk is not theoretical. Microsoft reports that MFA can block more than 99.2% of account compromise attacks Microsoft's mandatory MFA guidance. An exception is a deliberate hole in the control that delivers that protection. The goal is never zero exceptions. The goal is that every exception is visible, justified, and temporary.

Step 1: Find the accounts that cannot enroll before an auditor does

You cannot govern exceptions you have not inventoried. Two data sources do most of the work: your identity provider's authentication method registration data and your sign-in logs. Okta, for example, ships an MFA enrollment by user report that lists each user's enrolled authenticators and can be filtered to specific authenticator types, then exported to CSV Okta's enrollment report guide. That export is your baseline population of zero-enrollment and partial-enrollment accounts.

Sign-in telemetry is the second half. You want successful authentications that carry no MFA claim, failed challenges that cluster around specific apps, and legacy protocol traffic that never triggers a prompt. An MFA remediation plan framework recommends enumerating all identities, mapping sign-in surfaces including VPN, SSO portals, SaaS apps, mobile, and legacy protocols that cannot prompt for MFA, and capturing current-state data on registered methods, last MFA challenge, and failed enrollments Accountable's remediation guide.

Then do the part automation cannot do. An audit firm that reviewed a real breach described in a CISA and FBI joint advisory noted that an automated check can truthfully say "MFA is enabled" while developers were still connecting directly to production over SSH with no MFA KirkpatrickPrice's audit analysis. Automated checks confirm configuration. Human review confirms behavior. Walk each exception candidate with its owner before you decide whether it is a genuine exception or a fixable configuration gap.

Step 2: Decide what counts as a valid exception

Not every account with an enrollment problem deserves an exception. Sort candidates into three buckets before anyone signs an approval.

The first bucket is fixable now: the user has a phone but has not enrolled, the app supports modern authentication but the integration uses an old protocol, the admin has a hardware key available but has not registered it. Push these to remediation, not exception. Guidance on MFA remediation plans is clear that the workflow should move from assessment through definition, communication, implementation, monitoring, and finally enforcement, with compliance remediation actions applied for persistent non-compliance Accountable's remediation guide.

The second bucket is fixable with a different factor. NIST's authenticator assurance framework permits multiple paths to the same assurance level: AAL2 requires two authentication factors, either a physical authenticator plus a memorized secret, or a physical authenticator plus a biometric bound to it NIST AAL resource. If a user cannot use the standard authenticator app, a FIDO2 security key is a legitimate substitute, not an exception. Passkeys are phishing-resistant credentials that serve as an MFA method when combined with device biometrics or PIN, and they follow FIDO2 standards using WebAuthn for browsers and CTAP for authenticator communication Microsoft's passkey documentation. Microsoft reports that 99% of users successfully register synced passkeys and that synced passkeys are 14 times faster than a password plus traditional MFA combination, 3 seconds instead of 69 seconds Microsoft's passkey documentation. If enrollment friction is the real problem, fixing it likely removes most exception requests without any governance overhead.

The third bucket is genuinely exceptional: legacy protocols that cannot present a second factor, non-interactive service accounts, break-glass accounts, and vendors mid-migration. These get an exception. Accountable's exception tracking guide lists the typical categories as break-glass accounts, administrative exclusions, legacy protocols and service accounts, hardware or enrollment constraints, accessibility or hardship accommodations, federated partners and vendors, and incident response or testing Accountable's exception tracking guide.

Step 3: Grant time-bound access, not a bypass

The single most important design decision is this: an exception should not disable MFA. It should substitute a weaker control that still narrows access. A fully unauthenticated path and a "MFA exception" are different risk objects, and only one of them should appear in your register.

Exception typeWeakest acceptable controlMaximum durationApproval level
Break-glass adminVaulted credential, alert on use, device-bound key where possibleUntil next reviewCISO or delegate
Legacy protocol / service accountNetwork restriction to named subnet, short-lived credential, deprecation milestone90 days with milestone trackingIdentity owner plus asset owner
User enrollment constraintTemporary fallback factor, helpdesk-verified reset scheduled14 daysManager
Vendor mid-onboardingFederated trust with attested claims, monitored session30 daysVendor manager
Accessibility accommodationAlternative strong factor, documented per user90 days, then quarterlyManager plus accessibility reviewer

Accountable's exception tracking guidance recommends scoping narrowly to specific user, app, or session, enforcing short expirations, requiring senior approval, and adding compensating controls such as just-in-time elevation, device compliance checks, restricted networks, session monitoring, and change alerts Accountable's exception tracking guide. Their suggested cadence is concrete: administrative exclusions set to auto-expire within 7 to 14 days with re-approval for any extension, legacy protocols reviewed every 30 to 90 days with a deprecation plan, and accessibility accommodations reviewed within 30 days then quarterly Accountable's exception tracking guide.

For break-glass accounts specifically, the same source recommends validating access and credentials monthly, rotating secrets at least every 90 days and immediately after any use, and maintaining two independent accounts Accountable's exception tracking guide. A single break-glass account that is never tested is not a control. It is a latent outage waiting to happen during the incident when you need it most.

Step 4: Log the approver, the reason, and the exit condition

An exception with no record of who approved it is an unaudited bypass. The register is the artifact your auditor will ask for, and it should answer five questions for every row: who is affected, what exactly is bypassed, why, who approved it, and when it expires.

A minimal worked example. Your finance team runs a reporting job that uses an SMTP relay with a stored credential because the application cannot perform interactive MFA. You approve an exception limited to the relay's source subnet, with compensating controls of network restriction and log monitoring. The register row reads:

exception_id: MFA-EXC-0142
subject: svc-finance-reporting (service account)
scope: SMTP relay 10.20.4.0/24, no interactive sign-in
bypass: interactive MFA not applicable to SMTP AUTH
compensating_controls:
  - source IP restriction to 10.20.4.0/24
  - credential rotated every 30 days via vault
  - weekly sign-in log review for anomalous source
approver: jdoe (Identity Owner)
reason: legacy reporting app, no modern auth support
opened: 2026-01-15
expires: 2026-04-15
deprecation_milestone: app replacement in Q2 roadmap
review_cadence: 30 days

Three fields do the heavy lifting. The approver field is a named person with authority, not a team alias. The expires field is a hard date the system enforces. The deprecation_milestone field connects the exception to a remediation plan so that "temporary" has a definition. Without that milestone, the exception is indefinite by default.

Keep the register where it can be queried alongside your sign-in logs. Instrument every exception with a unique tag so you can pull every sign-in, administrative action, and data access tied to that exception, which is exactly what Accountable's guidance recommends Accountable's exception tracking guide. That tag turns the register from a spreadsheet into a monitoring instrument.

Step 5: Enforce automatic revocation at expiry

Governance fails most often at the moment of expiry. A human has to remember to revoke, and humans do not. If your identity provider or access tooling can enforce a time limit, configure it so the exception lapses on its own.

Mechanisms vary by platform. In Okta, app sign-in policies and authenticator enrollment policies determine which users must satisfy which authentication requirements, and policy scoping is where time limits live Okta's MFA for Entra ID documentation. In Microsoft Entra, Conditional Access is the enforcement layer, and risk-based policies can require stronger authentication when risk is detected, which means a stale exception should not silently outlast the risk that justified it Microsoft's risk policy guidance. Microsoft also requires users to register for MFA before they face a remediation scenario, so an exception that blocks registration eventually blocks the remedy as well Microsoft's risk policy guidance. Build the exception so it does not prevent remediation.

The decision rule is simple: if you cannot automate expiry in the system, the exception gets a shorter manual duration and a calendar owner. Automation buys you longer windows and lower review cost. Manual control buys you nothing but a reminder to remember.

A useful cross-check comes from the Assurance Level framework. Exceptions should be described in terms of which requirement is not met For example, an account that cannot perform two-factor authentication at AAL2 is not just "exempt from MFA," it is operating below the assurance level that policy requires, and the register should say so plainly NIST AAL resource. Microsoft's own guidance recommends meeting at least AAL2 with phishing resistance Microsoft's NIST AAL guidance, which gives you a defensible target to measure exceptions against rather than an arbitrary internal bar.

Step 6: Run reviews on a fixed schedule and report the results

A review is only useful if it has a cadence, an owner, and a decision. Fix all three.

Cadence by category. Match review frequency to privilege and exposure: break-glass monthly, administrative exclusions weekly or per change window with auto-expiry, legacy protocols every 30 to 90 days, accessibility accommodations within 30 days then quarterly Accountable's exception tracking guide. A quarterly blanket review of everything satisfies nobody, because a stale admin exclusion and a pending vendor exception deserve different clocks.

Decision options. Every row gets one of four outcomes: renew with a new expiry and a reason, tighten the compensating control, convert to a full fix (and close), or revoke. Ban the fifth and most common outcome, "leave as is."

Metrics to report. Track active exception count, count by category, exceptions past expiry, mean days to close, and the share of exceptions with a linked remediation milestone. Track the enrollment rate among the population that requested exceptions; if 98% of users can register a passkey but requests keep arriving, the problem is communication, not the authenticator.

A password and MFA review checklist suggests collecting the authentication policy exports and exception lists themselves as audit evidence, along with recent sign-in risk logs, MFA challenge results, and change records for MFA configuration updates Accountable's review checklist. Your exception register, with change history, is the single most valuable export you can hand a reviewer.

Common traps and how to avoid them

The permanent "temporary" exception. The exception was granted during a migration and the migration finished, but nobody closed the row. Fix: mandatory expires field plus automated revocation.

The group-based exclusion. Someone adds a group to an exclusion list, and membership drifts until the exception encloses people nobody intended. Fix: file exceptions against named identities or named service accounts, and review group membership quarterly. Accountable's detection guidance suggests listing all entities in exclusion lists and classifying them by category, then cross-checking against active workforce and privileged roles Accountable's exception tracking guide.

The exception without a compensating control. A user with no second factor and full network access is a worse position than a user with a temporary fallback factor on a monitored session. Fix: require at least one compensating control per row.

The unmanaged break-glass account. If it has never been tested, you do not know it works. Fix: rotate and test on a schedule Accountable's exception tracking guide.

The vendor exception that outlives the vendor. Third-party support access granted during onboarding persists after the contract ends. Fix: tie vendor exceptions to contract milestones and offboarding checklist items.

The exception that blocks remediation. Microsoft notes users must register for MFA before they face a remediation scenario, so an exception that removes registration ability also removes the path back to compliance Microsoft's risk policy guidance. Fix: exceptions should replace the second factor, never the ability to enroll one.

When the program matures, the hard problem is often the long tail of service accounts and non-human identities, where exemptions intersect with secret hygiene, rotation, and offboarding. If you need a tailored roadmap for your environment, a Quanta Intelligence consulting call can scope the identity work with your team: Quanta Consulting.

FAQ

FAQ

How long should an MFA exception last?

There is no universal number, but a practical default is 14 days for user enrollment constraints, 30 days for vendor onboarding, up to 90 days for legacy protocols with a tracked deprecation milestone, and no fixed end date for break-glass accounts, which instead follow a monthly validation and 90-day rotation cycle Accountable's exception tracking guide. The right duration is the shortest window in which the underlying fix is credible. If the fix is not scheduled, the exception is not genuinely temporary.

Can a user just use a different authenticator instead of getting an exception?

Almost always, yes, and that should be your first move. If the standard method is the problem, a FIDO2 security key or passkey provides phishing-resistant MFA with hardware or biometric activation. Passkeys are origin-bound public key credentials that cannot be replayed or shared, and Microsoft reports 99% of users successfully register synced passkeys Microsoft's passkey documentation. Try substitution before exception.

What happens when an exception expires but is still needed?

The exception should lapse, not renew silently. The system revokes access or reverts to the stronger policy, and the owner must file a fresh approval with a current reason and a new remediation milestone. That friction is intentional. If renewal takes thirty seconds with no thought, the exception will live forever.

Do we need to cite a standard when documenting an exception?

It strengthens the record. If your target is AAL2 with phishing resistance, state that the account is temporarily operating below that target, which explains precisely what is missing Microsoft's NIST AAL guidance. Stating the gap in assurance terms converts an administrative favor into a risk decision an auditor can evaluate against a recognized framework NIST AAL resource.

How do we keep exceptions from being created by accident?

Check exclusion lists regularly against active roles, and treat any exclusion entry without a register row as an incident to be either documented or removed. Align the practice with the core idea from NIST's authentication guidance: the assurance level attaches to the session, not the authenticator, so a session that skipped the required factors is out of policy regardless of what the device supports NIST SP 800-63B. The register, not the device inventory, is the authoritative record of which sessions are exempt.

Sources

Sources

  1. What Is Mfa exception? Definition & Examples
  2. Mandatory multifactor authentication for Azure and admin ...
  3. How to Generate the MFA Enrollment Report
  4. Step-by-Step Guide to Enforce Multi‑Factor Authentication
  5. Learning from the CISA Cybersecurity Advisory
  6. Authenticator Assurance Levels - NIST Pages
  7. Authentication methods in Microsoft Entra ID - passkeys (FIDO2)
  8. MFA Exception Tracking: Monitoring, Reporting, and Best ...
  9. Use Okta MFA for Microsoft Entra ID (formerly Azure Active ...
  10. Microsoft Entra ID Protection - Risk policies
  11. NIST authenticator assurance levels with Microsoft Entra ID
  12. Password and MFA Review Checklist: What to Audit ...
  13. NIST Special Publication 800-63B
About the author

About the author

Antonio Evans
Antonio Evans

Antonio Evans is the founder of Quanta Intelligence and a fractional CTO who builds HIPAA-ready AI systems for health and life-science companies. Before that he was technical co-founder of FriendsEAT for twenty years, CEO of Socialdraft, and a data engineer at IBM. Antonio lives with his dog Santino in Lisbon, Portugal.

All articles