La disponibilidad varía según el plan de Auth0
Tanto su implementación específica de inicio de sesión como su plan de Auth0 o acuerdo personalizado afectan la disponibilidad de esta función. Para obtener más información, consulte Pricing.
Requisitos previos
- Configurar el correo electrónico como factor en Auth0 Dashboard o mediante la Management API.
Inscripción con correo electrónico
Obtener un token de MFA
- Si realizas la inscripción durante la autenticación, consulta Autenticarse con Resource Owner Password Grant y MFA.
- Si quieres permitir que el usuario inscriba un factor en cualquier momento, consulta Administrar inscripciones de factores de MFA.
Inscribir autenticador
POST al endpoint MFA Associate para inscribir el autenticador del usuario. El token de portador que requiere este endpoint es el token de MFA obtenido en el paso anterior.
Use los siguientes parámetros:
| Parámetro | Valor |
|---|---|
authentication_types | [oob] |
oob_channels | [email] |
email | email@address.com, la dirección de correo electrónico del usuario. |
User is already enrolled, significa que el usuario ya tiene un factor de MFA inscrito. Antes de asociar otro factor al usuario, debes solicitar una verificación con el factor existente.
Si es la primera vez que el usuario asocia un autenticador, verás que la respuesta incluye recovery_codes. Los códigos de recuperación se usan para acceder a la cuenta del usuario en caso de que pierda acceso a la cuenta o al dispositivo que utiliza para la autenticación de segundo factor. Son códigos de un solo uso, y se generan nuevos según sea necesario.
Confirmar la inscripción por correo electrónico
POST al endpoint /oath/token. Incluye el oob_code devuelto en la respuesta anterior y el binding_code con el valor del mensaje de correo electrónico.
Si la llamada se realiza correctamente, recibirás una respuesta con el siguiente formato, que incluye el token de acceso:
active es true.
Opcionalmente, puede personalizar los correos electrónicos que reciben los usuarios. Consulte Personalizar las plantillas de correo electrónico para obtener más información.
Desafío con correo electrónico
Obtener un token de MFA
Obtener los autenticadores inscritos
authenticator_id del factor que quieres usar para el desafío. Puedes listar todos los autenticadores inscritos mediante el endpoint MFA Authenticators:
Solicitar un OTP al usuario
POST al endpoint de desafío de MFA con el authenticator_id correspondiente y el mfa_token.
Complete la autenticación con el code recibido
binding_code en la siguiente llamada al endpoint oauth``/token:
Si la llamada se realizó correctamente, recibirás una respuesta con el siguiente formato, que contiene el token de acceso:
Personalizar MFA
oauth/token, la respuesta devuelve el error mfa_required, que incluye el mfa_token para usar la API de MFA y el parámetro mfa_requirements con una lista de autenticadores:
mfa_token para llamar al endpoint mfa/authenticator, obtener una lista de todos los factores en los que el usuario se ha inscrito y seleccionar el mismo tipo que admite tu aplicación. También debes obtener el authenticator_type correspondiente para generar desafíos:
request/mfa/challenge.
Personaliza aún más tu flujo de MFA con Actions de Auth0. Para obtener más información, consulta Actions Triggers: post-challenge - API Object.