Hola. He buscado una respuesta a este problema pero no he encontrado nada. Soy administrador de nuestro foro y normalmente inicio sesión mediante autenticación de Google. Quise cambiar mi dirección de correo electrónico y comencé el proceso desde mi página de preferencias. El primer correo de confirmación llegó a mi dirección actual y lo confirmé; todo bien hasta ese momento, y me indicaron que se enviaría un correo de confirmación a la nueva dirección. El segundo correo de confirmación llegó a la nueva dirección, pero al hacer clic en el enlace de confirmación, apareció esto en el navegador:
¡Vaya! Esa página no existe o es privada.
El proceso termina con mi antigua dirección de correo electrónico aún activa en mi cuenta.
Puede que esté teniendo una experiencia similar. Soy administrador de nuestro foro. Cambié mi dirección de correo electrónico y recibí el correo de verificación; hasta ahí, todo bien. Al volver a mi foro, se inicia sesión automáticamente. Revisé mis ajustes: los correos del foro están configurados con mi nueva dirección, sin embargo… el correo para iniciar sesión sigue siendo el mismo con el que me registré originalmente. Hice algunas comprobaciones y descubrí que debo iniciar sesión en mi cuenta de administrador con la misma dirección que se utilizó al registrarme por primera vez. Si cierro sesión por completo e intento volver a entrar con mi «nueva» dirección de correo, obtengo el mismo mensaje de error que tú.
Revisa tus preferencias para ver si la dirección de correo para recibir los correos del foro está configurada con tu nueva dirección. Probablemente lo esté. Pero apuesto a que la dirección para iniciar sesión sigue siendo la que usaste cuando configuraste por primera vez tu cuenta de administrador.
Quizás @dax u otro miembro del equipo pueda explicar si así es como debería funcionar o si el correo de inicio de sesión del administrador debe restablecerse de otra manera.
Probé el proceso de cambio de correo electrónico de administrador en la versión más reciente de Discourse que ha superado las pruebas. Tenía la autenticación de Google configurada, además de las credenciales de inicio de sesión normales. Realicé las pruebas en dos navegadores diferentes (Safari y Chrome) y todo parece funcionar como esperaba.
También lo probé en un sitio de Discourse basado en un commit de hace aproximadamente 11 días. Esta cuenta de administrador tenía el inicio de sesión estándar configurado con 2FA habilitado. El proceso ha cambiado un poco desde ese commit, pero aún funciona correctamente.
Si alguien sigue encontrando este problema cuando su sitio de Discourse está completamente actualizado, por favor publiquen cómo reproducirlo paso a paso, junto con cualquier detalle relevante del navegador (versión, sistema operativo, navegador predeterminado vs. complementos instalados). Si su sitio está alojado por nosotros y esto está ocurriendo activamente, contáctenos a través del canal de soporte habitual y trabajaremos directamente con ustedes para resolver lo que está sucediendo.
En mi Panel de control, cambié mi dirección de correo electrónico por una nueva.
Recibí el correo del software del foro y hice clic en el enlace para verificarlo.
Al revisar el Panel de control, mi dirección de correo electrónico se actualizó para reflejar la nueva. Esto se muestra bajo Facturación.
Mi nueva dirección también recibe las notificaciones de nuevos temas/publicaciones.
Sin embargo, al revisar mis Preferencias de usuario/Cuenta (para iniciar sesión), todavía aparece la dirección de correo electrónico original que usé cuando comencé el foro.
Edité la dirección de correo electrónico allí y la cambié por la nueva.
Hice clic en Guardar cambios y salí.
Más tarde, verifiqué de nuevo y la dirección de correo electrónico original volvió a aparecer.
Cada vez que inicio sesión, el mensaje de inicio de sesión indica que debo usar la dirección con la que se configuró Discourse. Por eso no me molesté en reportarlo, pensando que era por seguridad. Aparte de eso, mi nueva dirección de correo electrónico sí recibe lo que debería: notificaciones, recibos de facturación, etc.
(De paso, todavía tengo acceso a mi antigua bandeja de entrada.)
Lo sentimos, no estábamos hablando de correos electrónicos alojados. Nos referíamos a que los usuarios (específicamente los administradores) inicien un cambio de correo electrónico en su cuenta a través de la misma página de edición de cuenta que ven todos los usuarios cuando cambian su correo electrónico.
Ahí radica mi problema. Soy administrador. No puedo cambiarlo en esa página. Voy a las preferencias de mi cuenta de usuario, cambio la dirección de correo electrónico, hago clic en guardar, recibo el aviso de que se ha enviado un correo de verificación y salgo. Cuando hago clic en el enlace y me llevan a la pantalla de inicio de sesión, ingreso mi nueva dirección de correo electrónico y recibo un aviso para iniciar sesión con la dirección utilizada al registrarme inicialmente. El cambio de correo electrónico nunca se guardó. Volvió a la dirección original con la que me registré.
Por otro lado, ¿si uso una dirección de correo electrónico de un dominio diferente que poseo (en lugar de uno con el mismo dominio que el foro), eso funcionaría? De cualquier manera, no es un problema para mí. Puedo dejar las cosas como están.
@David_Baker1, gracias por tomarte el tiempo de crear el video. Lo vi y lo seguí paso a paso en Chrome. Todo funcionó perfectamente, así que debe haber algo específico en tu entorno. Algunas preguntas a considerar:
¿Hay algún error relevante en la sección /logs de tu sitio?
¿Estás ejecutando alguna extensión del navegador Chrome? Si es así, ¿puedes probar el mismo proceso en un navegador diferente?
¿Tienes instalados plugins de Discourse que no sean oficiales?
Si alguna vez llega a convertirse en un problema, no dudes en enviarnos un correo electrónico y veremos si podemos solucionarlo directamente para ti. Esta es la primera vez que escucho sobre el problema que describes.
¡Hmm, qué extraño! Parece que tu configuración es bastante estándar. Le daré otra mirada con algunas ideas nuevas cuando tenga la oportunidad la próxima semana. Más allá de eso, no sé qué más hacer, ya que no he podido reproducir el problema.
Hola de nuevo: tras investigar más a fondo, encontré algo que podría indicar la causa. En la configuración o preferencias de mi cuenta, mi correo electrónico aparece como la dirección de la que deseo cambiar. Sin embargo, si hago clic en el botón de Administrador ubicado en la parte superior derecha de esa vista y me desplazo hasta el final, bajo la sección de configuración de SSO, figura la dirección de correo electrónico a la que deseo cambiar. Es la dirección que utilicé cuando configuramos Discourse por primera vez. Entre tanto, conseguí un nuevo trabajo y cambié el correo electrónico de mi cuenta, pero ahora quiero volver a cambiarlo.
Parece que ahora tengo dos direcciones de correo electrónico diferentes asociadas a mi cuenta.
¿Podría esto indicar la posible causa de este problema?
La dirección de correo electrónico a la que intentas actualizar puede ser ya el correo electrónico ‘secundario’ de tu cuenta. Si ese es el caso, deberás eliminar la dirección de correo electrónico secundaria antes de poder actualizar tu correo electrónico principal.
Como administrador del sitio, puedes confirmar que el correo electrónico es tu dirección secundaria yendo a tu página de administración y haciendo clic en el botón Mostrar de la fila Correos electrónicos secundarios:
Esta es exactamente mi situación. En el Administrador, mi correo electrónico muestra la dirección a la que quería cambiar, pero en mis preferencias de usuario sigue atascada en la dirección original que usé para iniciar sesión por primera vez. También tengo dos correos electrónicos diferentes asociados a mi cuenta… ¿o se consideran el usuario y el Administrador como dos cuentas distintas?
Acabo de verificarlo de nuevo. No tengo ninguna cuenta de correo electrónico secundaria que aparezca en el Panel de Administración.
Solo para asegurarnos de que este no sea el problema, ¿eres administrador del sitio? Los moderadores no verán los campos de correo electrónico a menos que la configuración “los moderadores pueden ver correos electrónicos” esté habilitada. Está deshabilitada por defecto.
Si tienes acceso a la consola de Rails para tu sitio, puedes verificar si la dirección de correo electrónico a la que intentas actualizar ya está en uso ejecutando el siguiente comando con esa dirección de correo electrónico:
UserEmail.where(email: 'tu_correo@ejemplo.com')
Si tienes instalado el plugin Data Explorer en tu sitio, puedes realizar esta verificación mediante una consulta de Data Explorer en lugar de tener que usar la consola.
Si se devuelven resultados, esa será la causa del problema. Sin embargo, el hecho de que la dirección de correo electrónico a la que intentas actualizar ya exista en un registro de Single Sign On no debería causar ningún problema.
EDIT: Lo encontré. user_notifications.confirm_new_email.text_body_template había sobrescrito la URL.
Puedes ignorar el resto.
Hola, Simon. Gracias por tu ayuda.
Este es el problema:
Está enviando correos de “confirma tu nueva dirección de correo electrónico” con enlaces como https://forum.xx.org/users/authorize-email/c7ed779eb28c049ec4a5105dd9e07013 en lugar de https://forum.xx.org/u/confirm-new-email/c15d4bc33211e586b70572195f7dac89.
Si reescribo el enlace para usar la URL correcta y el token, funciona perfectamente, pero por alguna razón, está enviando el estilo de enlace antiguo y no el nuevo. ¡Lo hice dos veces, una vez después de haber realizado el grep and reboot descrito a continuación.
Acabo de ejecutar ./launcher rebuild y sigue enviando enlaces con el formato antiguo. Como se anuncia, solo están instalados plugins oficiales y sólidos.
Luego entro al contenedor y, en /var/www/discourse, ejecuto grep -r authorize-email, pero no encuentra ningún archivo. Después, reinicié.
Estoy bastante atascado, al menos por segunda vez en 24 horas.