Una vez que los dominios están en la lista negra, las cuentas que ya han pasado el proceso no se ven afectadas y siguen siendo utilizables.
Quisiera preguntar si alguien conoce una forma de destruir masivamente (eliminar usuario y todo su contenido), suspender o silenciar usuarios basándose en el dominio de su correo de registro.
En mi caso, esto permitiría eliminar/deshabilitar cientos de miles de cuentas que utilizaron la técnica de dominio catchall para registrarse.
@codinghorror - No son datos migrados. No me importa que sea doloroso y lento, ya que la alternativa de permitir que las cuentas permanezcan probablemente sea peor En cuanto a la cantidad de contenido, es una mezcla: algunos no tienen ninguno (por lo general, los spammers planean usar estas cuentas más adelante), algunos tienen muy poco y otros tienen montones.
En la consola de Rails, escribe estos comandos y verifica si dan los resultados esperados (reemplaza el patrón de tu correo electrónico con ‘@gmail.com’)
idlist = UserEmail.where("email like '%@gmail.com'").pluck(:user_id)
users = User.find(idlist)
luego (procede con precaución)
system_user = Discourse.system_user
users.each do |user|
UserAnonymizer.new(user, system_user).make_anonymous
end
No soy un experto en temas de rendimiento, por lo que no sé exactamente qué sucedería si el número de usuarios es grande.