Recientemente hemos tenido 16 casos en los que usuarios de WordPress se asociaron con el usuario incorrecto en Discourse.
Al acceder al perfil de usuario como administrador, puedes ver que el registro de SSO contiene los datos del usuario equivocado. Si eliminas el registro, la próxima vez que el usuario inicie sesión a través de WordPress, obtendrá acceso al perfil de usuario correcto en Discourse.
Esto parece estar relacionado con tu problema anterior, del cual no logramos llegar al fondo antes.
Probablemente hubo alguna diferencia entre el correo electrónico en los detalles del SSO y el correo electrónico en el inicio de sesión en ese caso.
El problema en sí podría ser el mismo que ese caso parecía sugerir:
Sospecho que el problema es que require_activation está establecido en true en la carga útil del SSO.
¿Cómo sabes que los detalles son incorrectos? No lo dudo, solo trato de identificar de dónde podría provenir el problema. Puedes enviarme un mensaje privado con los detalles si prefieres no compartirlos públicamente.
No coincidían para los usuarios que se transfirieron. El ID y el correo electrónico del usuario correspondían a la persona que iniciaba sesión, pero estaban conectados al perfil incorrecto.
Una posible causa es que, en algunos casos, un solo correo electrónico esté asociado a varias cuentas de usuario en tu instancia de WordPress. ¿Crees que eso podría ser posible?
Por ejemplo, ¿has tenido en algún momento un proceso de registro de usuarios personalizado en WordPress (uno que no requiriera que el usuario confirmara su correo electrónico antes de iniciar sesión) o has realizado alguna importación de usuarios en WordPress?
¿Es este un problema continuo o se limita a un subconjunto de usuarios? ¿Son estas cuentas de usuario antiguas o nuevas?
¡No te preocupes, Angus! No tengo expectativas sobre tu atención.
Las cuentas de usuario se crean al realizar una compra en WooCommerce. Anteriormente, Woo estaba en un subdominio, pero los sitios se fusionaron. Como los dos sitios compartían una tabla de usuarios, los IDs deberían haberse mantenido constantes, al menos en teoría.
El acceso al sitio web estaba controlado anteriormente por MemberMouse, antes de mi llegada. Desde entonces, hace unos 5 años, el acceso ha sido gestionado por iMember360 y recientemente reemplazado por Memberium. Ambos son plugins esencialmente idénticos que se integran con un CRM llamado InfusionSoft y permiten el acceso a varias páginas según los datos del CRM.
El funcionamiento de estos plugins requiere una dirección de correo electrónico única, por lo que es imposible que la misma dirección se utilice en múltiples usuarios.
Es un problema continuo, pero parece estar limitado a un número muy pequeño de usuarios. Ha ocurrido con dos usuarios “antiguos” y recientemente con una cuenta de 5 días de antigüedad, por lo que no es un problema exclusivo de los nuevos usuarios.
Este es un caso complicado. Tengo algunas teorías sobre cómo podría estar configurándose require_activation en true en tu entorno y, consecuentemente, causar este problema, aunque hay varias (teorías) entre las que elegir.
Actualmente estoy terminando una nueva suite de pruebas para el plugin WP Discourse y estoy añadiendo registro de eventos a la funcionalidad de SSO. Estoy escribiendo algunos registros adicionales que deberían identificar la causa de esto. Este trabajo se incorporará al plugin dentro del próximo mes, por lo que deberíamos tener una respuesta más clara pronto.