Tecnicamente, um usuário não está “usando” o hash de senha legado.
Quando um usuário faz login pela primeira vez após uma migração e a senha não corresponde à senha do Discourse (que inicialmente será uma sequência aleatória de caracteres), o plugin executa sua função.
- ele verifica se a senha inserida corresponde aos campos personalizados
import_passusando todos os métodos de hash que conhece; - se encontrar uma correspondência, ele salva a senha no usuário e, em seguida, remove o campo personalizado
import_pass.
Portanto, após alguns anos, apenas os usuários que não “usaram” a senha migrada para fazer login ainda terão o campo personalizado import_pass.
a) eles nunca fizeram login (você pode verificar isso pela data da última visualização);
b) eles não usaram a senha migrada, mas fizeram login usando e-mail, um método de autenticação diferente ou redefiniram sua senha.
Acabei de perceber que a situação b pode introduzir um problema de segurança. Se um usuário não se lembrar de sua senha e a alterar ou se usar outro método de autenticação, o hash de senha migrado ainda estará lá e poderá ser usado junto com a nova senha. Acabei de enviar uma atualização para o plugin para que ele limpe o campo personalizado import_pass em todo login bem-sucedido.
Assim, daqui para frente, o campo personalizado import_pass estará presente apenas para usuários que nunca fizeram login.