> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# MFA Overview

> [card] Recommended: JavaScript SDK for React Native
>
> While this SDK is still supported, we recommend using newer [JavaScript SDK](https://docs.dynamic.xyz/docs/javascript/reference/react-native-quickstart.md), which is optimized for React Native, but also comes with a host of other benefits.

Multi-Factor Authentication (MFA) adds a layer of security to your app. MFA is structured as **enrollment** (users register a second factor) and **enforcement** (when it is required—at login and/or for specific actions like transactions).

> [!NOTE]
>
> Before implementing MFA in your application, configure MFA settings in the Dynamic Console. See [End-User MFA](https://docs.dynamic.xyz/docs/platform/console/end-user-mfa.md) for enrollment and enforcement (session-based and/or action-based), configuration options, and console setup.

> [!TIP]
>
> Users can use passkeys or TOTP devices for MFA — each guide covers both.

> [card] [MFA Enrollment](https://docs.dynamic.xyz/docs/react-native/authentication-methods/mfa/account-based.md)
>
> Learn how to implement MFA enrollment (registering a TOTP device or Passkey).

> [card] [Action-based enforcement](https://docs.dynamic.xyz/docs/react-native/authentication-methods/mfa/action-based.md)
>
> Learn how to implement action-based enforcement (MFA for sensitive actions).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.