Overview
When a user can no longer satisfy their MFA requirements (whether they lose a passkey, phone number, or access to another factor), they risk losing access to their account. Turnkey cannot bypass MFA through customer support, because Turnkey has no write access to organizations. Recovery is also the weak point in any authentication system. While passkey authentication is phishing-resistant and frictionless in the happy path, the risk concentrates in recovery: when a user loses their primary authenticator, they fall back to weaker factors, and recovery can attach brand-new signing credentials to the account. An attacker who controls a user’s email inbox can complete a recovery flow and walk away with access to sensitive operations. NIST SP 800-63B is explicit that account recovery must be at least as strong as primary authentication, because attackers reliably target the weakest path in. There is no single recovery pattern that fits all threat models. This page presents multiple valid approaches as design choices, along with transferable best practices that apply across all patterns.Best practices for all recovery approaches
These principles apply regardless of which recovery strategy you choose. 1. Require two independent factors for recovery, only for recovery. Use a conditional MFA policy scoped to recovery-path operations: email OTP AND a second factor (SMS OTP or OAuth). Email alone never completes recovery. SMS should only ever be an ANDed factor, and never standalone due to SIM swap risk. Also consider factor overlap: if the user’s email and OAuth identity are the same Google account, they are not independent channels. 2. Land recovery in a scoped session that can only add a new authenticator. Define a session profile whose sole permitted action is registering a new credential. No signing, no exports, no transfers. The recovery flow is: user satisfies recovery MFA, receives the recovery-scoped session, enrolls a new authenticator, then logs in normally with it. Even a fully successful attack on recovery factors yields a session incapable of moving funds. 3. Gate higher-sensitivity operations with step-up sessions. Default sessions can allow low-friction actions like viewing balances, while fund transfers require a short-lived, MFA-gated session. Use amount-based conditional MFA so large sends always re-prompt. A freshly recovered account still faces the withdrawal gate before funds can leave. 4. Make recovery rare. Prompt users to enroll a backup passkey at onboarding. Collect email plus phone (or a backup passkey) at signup so every user can satisfy the ANDed recovery requirement later without friction. 5. Treat recovery as a security event. Recovery attaches a new credential; it does not reset a password. Notify on all channels when recovery starts and when an authenticator is added, with a fast “this wasn’t me” freeze path. Detect recovery and authenticator-creation activities via webhooks. Show the full authenticator list in account settings. For additional protection, consider a 24–72 hour withdrawal hold after recovery. 6. Maintain strict flow hygiene. Use short OTP expiry, strict attempt limits, and rate-limit recovery initiation. Deliver codes instead of magic links. Never use knowledge-based questions (NIST prohibits them).Recovery approaches
Recovery through new authenticator enrollment
This approach lets users regain access by proving identity through a strong, secondary channel (email + SMS OTP), then immediately enrolling a new passkey. The new credential is scoped to a recovery session that can only complete registration. It cannot sign, export, or perform other sensitive actions until the user logs in again with the newly recovered passkey.How it works
- User initiates recovery, providing their email address.
- User satisfies a conditional MFA policy: email OTP + SMS OTP (or email OTP + OAuth).
- Upon successful MFA, user receives a recovery-scoped session token.
- User enrolls a new passkey using the
ACTIVITY_TYPE_RECOVER_USERactivity. - User logs in normally with the new passkey to access their account.
Design rationale
The recovery session profile acts as a strong mitigation. Even if an attacker successfully compromises both recovery factors (email and phone), they can only register a credential. They cannot immediately use that credential to drain the account or transfer assets.Implementation example:
First, create a session profile that permits only credential registration:Unlock via delegated-access quorum
This approach suits organizations that want recovery to go through a gated approval process. Multiple users together hold the power to unlock MFA policies on behalf of locked-out users. A quorum requirement ensures no single party can unilaterally remove a user’s MFA. This pattern is valuable when the user retains one MFA factor but has lost another — for example, they still have their passkey but have lost SMS or email access. Support verifies identity out-of-band, then proposes deletion of the MFA policy. A quorum of delegated-access users approves, and the user regains access.How it works:
- User contacts support, claiming loss of a factor.
- Support verifies identity through an out-of-band process.
- A delegated-access user proposes deletion of the MFA policy.
- A second delegated-access user, controlled by a different party, approves the deletion.
- The MFA policy is deleted; the user can authenticate without the lost factor.