Tratar con una cuenta de usuario hackeada no debería requerir la consola

Hola a todos,

la cuenta de uno de nuestros usuarios fue comprometida. El flujo de trabajo para mitigarlo no fue el ideal.

La consola de Rails fue necesaria para:

  • Forzar el cambio de la dirección de correo electrónico
  • Forzar el cambio de la contraseña a algo aleatorio para forzar un restablecimiento de contraseña por correo electrónico
  • Finalizar todas las sesiones activas

Además, descubrimos que el cambio de correo electrónico solo era visible en los registros de correo electrónico saliente y en ningún otro lugar.

El detector de spam de IA detectó ese spam para cuentas nuevas, pero no estaba habilitado para ese nivel de confianza y número de publicaciones. Quizás sería una buena idea incluir la opción de habilitar el detector de spam de IA para cambios de país y/o para usuarios sin publicaciones en más de un año.

Gracias a todos por el excelente software a lo largo de los años, a pesar de fallos menores como este.

2 Me gusta

Todas esas acciones también se pueden realizar desde la página de Admin > Usuarios. ¿No estoy seguro de qué le dio la impresión de que solo era posible desde la consola?

2 Me gusta

Cambiar el correo electrónico envía una solicitud de confirmación a la nueva dirección, pero no elimina la anterior inmediatamente.
El botón de desactivar cuenta podría haber sido el correcto, pero no está claramente etiquetado si esto obliga a un restablecimiento de contraseña por correo electrónico.

Aún no pude encontrar un botón de eliminar todas las sesiones y, aunque cambiar la contraseña a través de suplantación de identidad funciona en teoría, es muy complicado, especialmente cuando los usuarios tienen su cuenta configurada en un idioma que el administrador/moderador no habla.

2 Me gusta

Si tiene razones plausibles de que la dirección de correo electrónico de un usuario esté comprometida y, a su vez, haya provocado que su cuenta de Discourse se vea comprometida, usted, como administrador, puede cambiar su correo electrónico y eliminar el correo electrónico anterior.

Simplemente puede marcar una cuenta como desactivada, lo que forzará una nueva verificación de correo electrónico y esencialmente anulará todas las sesiones existentes.

3 Me gusta

No, lo intenté y no pude hacerlo porque generó un correo electrónico de confirmación para la nueva dirección de correo electrónico y, hasta que no se hiciera clic en él, el antiguo seguía en la base de datos y probablemente era válido.

En tales casos, se puede usar la suspensión en su lugar.

1 me gusta

Abrí esto como un informe de error/solicitud de característica a propósito para posiblemente mejorarlo más tarde, la tarea concreta ya se ha realizado y el usuario recuperó su cuenta.

No estoy muy seguro de que esto sea un error. Esto ni siquiera es un caso límite en mi opinión. Que los usuarios sean descuidados con sus datos o identidad no es algo común y existen suficientes salvaguardas. Hacer este proceso más fácil podría tener más efectos secundarios. Esto no es algo con lo que la gente deba lidiar a diario y si la situación es lo suficientemente crítica, los administradores saben cómo mitigarla. Quizás el texto podría mejorarse un poco, pero definitivamente no estoy a favor de añadir más opciones a la interfaz de usuario.

2 Me gusta

Además, no hay un botón para aumentar el tiempo de una suspensión sin levantarla primero.

¿Qué tiene de malo un botón de cerrar sesión en todas las sesiones y forzar cambio de contraseña y forzar cambio de correo electrónico? He visto eso en otro software.

Personal usándolo maliciosamente por una vez.

Recientemente envié una solicitud de funcionalidad para tener más control sobre las direcciones de correo electrónico de los usuarios para los administradores, lo que también abordaría este caso de uso:

Sí, no es un evento común (afortunadamente). Pero es crítico cuando ocurre (o algo similar) y requiere una respuesta rápida. ¡No es el momento de aprender a navegar por Bash / la consola de rails o de abrir un ticket de soporte!

2 Me gusta

Pero desactivar la cuenta provisionalmente no requiere navegar por la consola de rails. En casi 10 años de gestionar varias comunidades de Discourse, nunca me he encontrado con una situación que haya requerido la consola de rails (aparte de migrar comunidades o realizar acciones masivas). Aprecio el hecho de que puede haber casos en los que realizar cambios directamente en la base de datos se consideraría la apuesta más segura para prevenir más daños, pero no estoy seguro de si añadir más opciones a los perfiles de usuario o a las páginas de administración tiene sentido dado que ambas ya están muy abarrotadas.

Verdad, y los detendrá en seco de manera bastante efectiva.

También estoy bastante seguro de que una fusión forzada por un administrador de cuentas con la posterior eliminación de la dirección de correo electrónico infractora (ahora no principal) sería efectiva, y también podría usarse para forzar cambios de correo electrónico en otras situaciones. Pero esto es muy, muy, un trabajo de solución temporal.