Cómo funciona
- Un usuario intenta iniciar sesión con un formulario de inicio de sesión de Auth0 (integrado en su sitio o alojado en Auth0).
- Si Auth0 no encuentra un usuario asociado a las credenciales proporcionadas en su conexión de base de datos, llama al endpoint de migración en su sitio de WordPress con las credenciales del usuario y el token de migración.
- El plugin busca un usuario en su base de datos de WordPress con el nombre de usuario/correo electrónico proporcionado y verifica la contraseña.
- Si el usuario se autentica correctamente, Auth0 crea al usuario en la conexión de base de datos de su sitio, lo autentica e inicia su sesión.
- La próxima vez que el usuario inicie sesión, usará su usuario de Auth0 y se omitirá el endpoint de migración.
Configuración inicial y configuración
- Cree y configure correctamente una aplicación, y cree y active una conexión de base de datos vacía para la aplicación. Pueden ser las mismas que se crearon durante el proceso estándar del Asistente de configuración, o bien puede crearlas desde cero. Para obtener más información sobre el Asistente de configuración, consulte Instalar Login by Auth0.
- En la pantalla Auth0 > Settings de WordPress, asegúrese de que el dominio, el ID de cliente y el Secreto del cliente de la aplicación estén guardados en los campos correspondientes de la pestaña Basic.
-
En la vista Advanced, habilite la opción User Migration Endpoints y seleccione Save Changes. Si utiliza configuraciones basadas en constantes, establezca
AUTH0_ENV_MIGRATION_WSentrueyAUTH0_ENV_MIGRATION_TOKENen una cadena aleatoria segura de al menos 16 caracteres, sin comillas simples ni barras invertidas. - En la configuración, ahora deberías ver un Token de seguridad. Mantén esta página abierta, ya que necesitarás este valor más adelante en el proceso.
- En el Auth0 Dashboard, vaya a la conexión de base de datos que quiera usar y habilite Requiere username y Importar usuarios a Auth0.
- Selecciona la vista Custom Database y activa Use my own database.
- Debería haber dos pestañas debajo de esta configuración, en Database Action Scripts: una para Login y otra para Get User.
- Seleccione la vista Login, elimine el código existente, copie el código de db-login.js del repositorio de GitHub y péguelo en el editor de código.
-
Este paso es para las versiones 3.10.0 y anteriores: Busque
{THE_WS_URL}y sustitúyalo por la URL del sitio de su instancia de WordPress, seguida de/index.php?a0_action=migration-ws-login. La URL del sitio se encuentra en la pantalla Settings > General de wp-admin. Puede comprobarlo pegando la URL completa en el navegador. Debería ver{"status":401,"error":"Unauthorized"}. -
Este paso es para las versiones 3.10.0 y anteriores: Busque
{THE_WS_TOKEN}y reemplácelo por el token que aparece en la configuración User Migration Endpoints. - No debería haber errores en el editor. Si todo está bien, haz clic en Save en la parte superior.
-
Este paso es para la versión 3.11.0 y posteriores: Desplázate hacia abajo hasta Settings y agrega las siguientes variables de configuración:
endpointUrlconfigurado con la URL del sitio de tu instancia de WordPress (wp-admin > Settings > General > campo “Site URL”), seguida de/index.php?a0_action=.migrationTokenconfigurado con el valor del token de seguridad que aparece en el paso 4 anterior.userNamespaceconfigurado con el nombre de tu aplicación en Auth0 o cualquier otro valor que incluya únicamente letras, números y guiones.

- Haga clic en el botón Try en la parte superior y use una cuenta válida de usuario de WordPress en el formulario que aparece. Debería ver “El perfil es” seguido de los datos del usuario. Si no es así, consulte la sección Resolución de problemas que aparece a continuación.
- Seleccione la vista Get User, elimine el código existente, copie el código de db-get-user.js del repositorio de GitHub y péguelo en el editor de código.
-
Este paso es para la versión 3.10.0 y anteriores: Busque
{THE_WS_URL}y reemplácelo por la URL del sitio de su instancia de WordPress, seguida de /index.php?a0_action=migration-ws-get-user. La URL del sitio se encuentra en la pantalla Settings > General de wp-admin. Puede probarlo pegando la URL completa en su navegador. Debería ver{"status":401,"error":"Unauthorized"}. -
Este paso es para la versión 3.10.0 y anteriores: Busque
{THE_WS_TOKEN}y reemplácelo por el token que aparece en la configuración de User Migration Endpoints. - No debería haber errores en el editor. Si todo está bien, haz clic en Save.
- Haz clic en el botón Try en la parte superior y, en el formulario que aparece, usa una dirección de correo electrónico asociada a una cuenta de usuario válida de WordPress. Deberías ver “The profile is” seguido de los datos del usuario. Si no es así, consulta la sección Troubleshooting a continuación.
- En una nueva sesión del navegador, ve a una página de Login del sitio de WordPress e intenta iniciar sesión (el usuario no debería existir todavía en la base de datos). Verás que el proceso de inicio de sesión tarda un poco más de lo habitual al principio, pero debería completarse correctamente. Los inicios de sesión posteriores serán más rápidos.
- (OPCIONAL) Para activar seguridad adicional en los endpoints de migración, ve a la pantalla Auth0 > Settings en WordPress, activa esta opción y luego haz clic en Save Changes. Intenta iniciar sesión con un usuario diferente para comprobar que Auth0 todavía puede acceder a los endpoints.
Solución de problemas
- URL o token incorrectos en los scripts personalizados de base de datos.
- Lista de IP permitidas activada, pero con direcciones IP incorrectas.
- Endpoints restringidos o almacenados en caché en tu instancia de WordPress.
Token inesperado < en JSON en la posición 0
{"status":401,"error":"Unauthorized"}
// or
{"status":403,"error":"Forbidden"}
Si lo que ve es la página de inicio o un error 404, entonces la URL es incorrecta. Busque la URL de su sitio en Settings > General > Site URL en la administración de WordPress. Agregue /index.php?a0_action=migration-ws-login al final para el script de Login y /index.php?a0_action=migration-ws-get-user al final para el script de Get User.
- Para las versiones 3.10.0 y anteriores: El valor de la URL debe aparecer en el propio script como primer parámetro en la llamada a
request.post. - Para las versiones 3.11.0 y posteriores: El valor del token debe guardarse en una variable de configuración. Agregue lo siguiente a la primera línea de la función y use el botón Try para ver qué se almacena en
endpointUrl:
callback(null, configuration);
Si está seguro de que las URL son correctas y aun así sigue teniendo este problema, consulte con su proveedor de hosting para asegurarse de que esas URL no estén en caché ni restringidas de ninguna manera.
Correo electrónico o contraseña incorrectos
callback(null);
por:
callback(wpUser.error);
Guarde el script e intente la conexión de nuevo. Debería ver uno de los siguientes mensajes y poder identificar el problema con los pasos que se indican a continuación. Una vez que haya resuelto el problema, vuelva a cambiar el script para dejarlo como estaba.
Prohibido
- Para las versiones 3.10.0 y anteriores: El valor del token debe aparecer en el propio script después de
access_token: - Para las versiones 3.11.0 y posteriores: El valor del token debe guardarse en una variable de configuración. Añade lo siguiente en la primera línea de la función y usa el botón Try para ver qué se almacena en
migrationToken:
callback(null, configuration);
Esto significa que la lista de IP permitidas para la migración está activada, pero la dirección IP entrante no figura en la lista. Justo debajo del script de Login debería ver una lista de direcciones IP:


Authorization. Para obtener ayuda con la solución de problemas del servidor, lea Apache 2.4 + PHP-FPM and Authorization headers on stackoverflow.com. Para ver cómo se obtiene el token, consulte el código del plugin en el repositorio de GitHub.
Token no válido
Credenciales no válidas
No se puede cambiar el correo electrónico o los datos de usuario son incorrectos
- Si no tiene datos de usuario almacenados que deban conservarse (si solo usa la conexión para admitir el inicio de sesión y no almacena metadatos), puede crear una nueva conexión de base de datos personalizada siguiendo los pasos anteriores (usando las notas de la versión 3.11.0) y cambiar la aplicación a esta nueva conexión (asegúrese de desactivar la conexión anterior). La migración se reiniciará y no habrá ningún impacto en la experiencia del usuario.
- Si sí tiene datos en Auth0 que deben conservarse, puede usar nuestra extensión User Import/Export para ajustar los datos de usuario.
- Cree una nueva conexión de base de datos personalizada siguiendo los pasos anteriores (usando las notas de la versión 3.11.0).
- Exporte todos los usuarios de la conexión existente (recomendamos poner su sitio en modo de mantenimiento mientras realiza el cambio, para no omitir ningún usuario).
- Cambie todos los ID de usuario para agregar el espacio de nombres usado al crear la nueva conexión. Los ID de usuario deben pasar de algo como
auth0|123aauth0|Your-WP-Site-Name|123. Ajuste todos los demás campos necesarios para cumplir con el esquema de importación. Para obtener más información, consulte Bulk User Import Database Schema and Examples. - Active la nueva conexión y desactive la conexión anterior para su aplicación.
- Importe los nuevos datos de usuario en la nueva conexión y pruébela.
- Si tiene una cuenta de pago, puede ponerse en contacto con nuestro equipo de soporte para ejecutar un script de actualización de la base de datos que cambie los ID de usuario a una versión con espacio de nombres y agregue el espacio de nombres a su script de base de datos al mismo tiempo (paso 12 en Set Up and Configuration más arriba).