¿Necesitamos ventanas emergentes para el inicio de sesión?

Desde el inicio de los inicios de Discourse, los inicios de sesión sociales en escritorio siempre utilizaron una ventana emergente para iniciar sesión.

La intención era ser “menos” intrusivo, manteniéndote en el sitio real mientras ocurría el proceso de “inicio de sesión”.

Creo que no tiene sentido mantener esto por varias razones.

Ya es inconsistente con la forma en que funciona el “SSO de Discourse”, puede ser inestable en navegadores que no permiten ventanas emergentes (mi Firefox se queja y requiere un clic para habilitarlo), el código para publicar mensajes es complejo y difícil de mantener, además de que ya estamos requiriendo un clic adicional en la ventana emergente.

¿Qué opinarías de eliminar el código de “abrir una ventana emergente para el inicio de sesión social” y tener solo una forma consistente de iniciar sesión, ya sea mediante SSO, inicio de sesión social o lo que sea?

@codinghorror / @david / @eviltrout?

26 Me gusta

Estoy de acuerdo en que deberíamos eliminar los popups y hacer que todo sea consistente. Esto también nos permitiría descartar mucho código :tada:

Los problemas que describiste en Firefox son solucionables, pero como dijiste, el código de los popups es complejo y propenso a errores como este.

¿Te gustaría que trabaje en esto más tarde esta semana?

18 Me gusta

¡Me encantaría :grin:

10 Me gusta

He creado un PR para esto

Una vez que finalmente llegue a la versión estable, deberíamos eliminar las opciones de configuración redundantes de «pantalla completa» de los complementos (por ejemplo, OAuth2, OIDC).

15 Me gusta

Qué bien… :+1:t3: :slot_machine: :hugs:

11 Me gusta

Esto está modificando algunas partes bastante críticas de nuestro código de autenticación, por lo que la rama ya se ha desplegado en Meta para pruebas.

Si alguien tiene un poco de tiempo libre, por favor intenta iniciar sesión usando varios proveedores diferentes y desconectar/volver a conectar cuentas en tus preferencias. Si encuentras algún problema, házmelo saber y lo investigaré :face_with_monocle:

También es una gran oportunidad para probar nuestra nueva autenticación de Discord, que está configurada aquí en Meta :tada:

6 Me gusta

@jomaxro ¿podrías ayudar con las pruebas?

3 Me gusta

¡Por supuesto! Probaré todas las cuentas que tengo.

6 Me gusta

Se probó el inicio de sesión con Facebook, Google, Twitter y Discord; todos exitosos. También se probó la desconexión y reconexión de las mismas cuentas desde las preferencias del usuario. Ambos procesos fueron fluidos.

No puedo probar GitHub, ya que tengo 2FA activado en la cuenta de Discourse vinculada a mi GitHub.

5 Me gusta

Realicé más pruebas (las pruebas anteriores se realizaron todas en Chrome en Windows). Confirmé que el inicio de sesión funciona con IE, Edge y Firefox en Windows también. Descubrí dos errores menores: uno relacionado con el cierre de sesión y otro con la conexión de la cuenta en IE, pero ambos se han confirmado como existentes antes de este cambio.

5 Me gusta

Gracias por las pruebas, @jomaxro.

PR aquí. Es un error central que se agravó porque Facebook insiste en agregar un hash a la URL de devolución de llamada.

Esto era un problema de caché que solo afectaba a IE11. Debería estar solucionado por este commit. Implementando esa corrección en Meta ahora :mantelpiece_clock:

12 Me gusta

¡Esto suena genial! Quizás podamos fusionar después de que se corte la próxima beta.

6 Me gusta

Una publicación se dividió en un nuevo tema: Google One-Tap Sign In

Esto ya se ha fusionado

9 Me gusta

Este tema se cerró automáticamente después de 6 días. Ya no se permiten nuevas respuestas.