-
El usuario accede a la página de inicio de sesión del sitio de WordPress. Puede ser la página principal de inicio de sesión en
[SITE URL]/wp-login.phpo una página que contenga un widget o un shortcode. - El usuario introduce su nombre de usuario y contraseña, hace clic en un icono de una red social para usar otro proveedor de identidad o completa el proceso Passwordless en el formulario de inicio de sesión de Auth0, Lock.
-
Auth0 intenta autenticar al usuario mediante el método seleccionado.
- Si el inicio de sesión o el registro con un nombre de usuario + contraseña o con Passwordless fallan, aparece un mensaje de error en Lock.
- Si se realiza correctamente, el proceso continúa.
-
El usuario es redirigido al endpoint
/authorizecon un ticket de inicio de sesión y un valorstategenerado por el plugin. Una vez completado esto, se habrá creado el registro de usuario en Auth0 y el resto del proceso tendrá lugar en el sitio de WordPress. -
El proceso de inicio de sesión varía según si utilizas el Authorization Code Flow o el Implicit Flow:
-
Para los inicios de sesión con Authorization Code Flow:
- Se redirige al usuario de vuelta a una URL de callback,
SITE URL/index.php?auth0=1, con un código de autorización y el mismo valor destateen los parámetros de la URL. - Se valida el valor de
state. Si la validación falla, se muestra un error de “Estado no válido” y el proceso de inicio de sesión se detiene. Para obtener más información sobre la validación destate, consulta Solucionar problemas de inicio de sesión con el plugin Auth0 para WordPress. - El token de ID se valida para asegurarse de que no se haya modificado nada durante la transmisión. Si el token de ID no es válido, se muestra un mensaje de error y el proceso de inicio de sesión se detiene (consulta la página de Solución de problemas para obtener más información sobre la validación del token de ID)
- Los datos del perfil del usuario se recuperan mediante la Management API con el flujo Machine-to-Machine. Para obtener más información, consulta Flujo Machine-to-Machine.
- Se redirige al usuario de vuelta a una URL de callback,
-
Para los inicios de sesión con Implicit Flow:
- Se redirige al usuario de vuelta a una URL de callback,
SITE URL/wp-login.php?auth0=implicit, con un token de ID y el mismo valor destateen un enlace ancla. - Este enlace ancla se procesa en JS y luego se envía de vuelta mediante POST a una URL de callback,
SITE URL/index.php?auth0=implicit, con esos mismos 2 valores en los parámetros de la URL. - El token de ID se valida para asegurarse de que no se haya modificado nada durante la transmisión. Si el token de ID no es válido, se muestra un mensaje de error y el proceso de inicio de sesión se detiene (consulta la página de Solución de problemas para obtener más información sobre la validación del token de ID)
- La información del token de ID válido se utiliza como datos del perfil del usuario.
- Se redirige al usuario de vuelta a una URL de callback,
-
Para los inicios de sesión con Authorization Code Flow:
- El proceso de autenticación de Auth0 se ha completado y el plugin intenta asociar los datos del perfil con un usuario de WordPress.
-
El plugin comprueba si el sitio requiere una dirección de correo electrónico (pestaña Advanced de la configuración del plugin) y si el perfil recibido tiene establecido el indicador
email_verified.- Si el sitio requiere una dirección de correo electrónico y el usuario que intenta acceder no proporciona una (algunos proveedores de identidad social, como X, no incluyen una dirección de correo electrónico), el proceso de inicio de sesión se detiene y muestra un mensaje de error que dice “Esta cuenta no tiene un correo electrónico asociado.”
- Si el sitio requiere una dirección de correo electrónico y el usuario que intenta acceder no tiene la marca
email_verifiedestablecida entrue, el proceso de inicio de sesión se detiene y muestra un mensaje de error que dice “Este sitio requiere una dirección de correo electrónico verificada” y un enlace para volver a enviar el correo de verificación. Esto seguirá mostrándose hasta que el usuario verifique correctamente su dirección de correo electrónico. - Si el sitio no requiere una dirección de correo electrónico o el usuario que intenta acceder tiene la marca
email_verifiedestablecida entrue, el proceso de inicio de sesión continúa.
-
El plugin comprueba si hay un usuario en la base de datos de WordPress con un valor de
usermetaque coincida con el ID de usuario de Auth0 recibido (es decir, que el usuario ya se ha registrado o ha iniciado sesión antes con Auth0):- Si se encuentra un usuario con el ID de usuario recibido, el proceso de inicio de sesión continúa.
-
Si no se encuentra ningún usuario con el ID de usuario de Auth0 recibido, el plugin busca una dirección de correo electrónico que coincida con la del usuario recibido:
- Si se encuentra una coincidencia, se selecciona ese usuario y el proceso de inicio de sesión continúa.
-
Si no se encuentra ninguna coincidencia, el plugin comprueba si el registro está activado en el sitio de WordPress:
- Si el registro está desactivado, el proceso de inicio de sesión se detiene con un mensaje de error que indica “No se pudo crear el usuario. El proceso de registro no está disponible”
. - Si el registro está activado, se crea un usuario nuevo y el proceso de inicio de sesión continúa.
- Si el registro está desactivado, el proceso de inicio de sesión se detiene con un mensaje de error que indica “No se pudo crear el usuario. El proceso de registro no está disponible”
- El usuario encontrado o creado se actualiza con los datos del perfil de Auth0 recibidos, incluido su ID de usuario de Auth0.
-
El usuario ha iniciado sesión en su cuenta de WordPress con
wp_set_auth_cookiey se ejecuta la acción del núcleodo_login. - El usuario es redirigido a una página del sitio, que puede ser la predeterminada configurada en la pestaña Advanced de los ajustes del plugin, o la URL de inicio de sesión original si se utilizó un shortcode o un widget, o bien otra distinta indicada durante el proceso de inicio de sesión.
Integración con WordPress
Describe los escenarios de integración de Auth0 con WordPress
El plugin Login by Auth0 gestiona automáticamente los flujos de inicio de sesión y creación de cuentas mediante la creación o asociación de cuentas de usuario con los datos del perfil de Auth0 recibidos. El proceso de inicio de sesión y el proceso de registro son similares, y se creará o asociará una cuenta en función de los datos de tu base de datos de WordPress. Iniciar sesión con Auth0 crea una cuenta de WordPress, y registrarse con Auth0 vincula una cuenta existente de WordPress.
Si estás usando la configuración User Migration en el plugin, el flujo de inicio de sesión será ligeramente diferente de lo que se explica a continuación. Para obtener más información, consulta User Migration in plugin Login by Auth0 para WordPress.
A continuación, se detallan los pasos del proceso: