Migrated password hashes support

Obrigado @pfaffman

Fiz alguns testes e posso confirmar que não funciona com o Drupal 7, que aparentemente usa SHA-512, conforme Drupal 7: Secure password storage by default at last | Jon Cave

Vou criar um PR se conseguir adicionar um compatível.

Rich

3 curtidas

Olá :waving_hand:

Migrei uma grande quantidade de conteúdo do bbPress para a minha instalação do Discourse. Consigo ver todas as postagens, usuários e afins. Mas meus usuários não conseguem fazer login usando os dados de “senha antiga” do meu site WordPress. Instalei o plugin, e ele aparece na seção de plugins da minha área administrativa. Marquei todas as opções disponíveis.

Ainda assim: ninguém consegue fazer login!
Também não faço ideia de onde aplicar o código fornecido no README do plugin:

user = User.find_by(username: 'user')
user.custom_fields['import_pass'] = '5f4dcc3b5aa765d61d8327deb882cf99'
user.save

Além disso, não entendo exatamente o que significa “hashes de senha alternativos” mencionado no README.

@michaeld, você poderia dar mais orientações sobre como usar o plugin?

Até onde me lembro, o importador do bbPress suporta o plugin, então você fez tudo corretamente e isso é tudo o que precisa fazer.

1 curtida

Nossa, depois de mais alguns testes, descobri que na verdade funcionou. O problema era uma senha alterada quando eu testei :man_facepalming: Desculpe! Obrigado pelo ótimo plugin! Tornou minha vida muito mais fácil!

2 curtidas

Oi, estou com problemas para fazer isso funcionar. Criei um campo personalizado chamado import_pass e instalei o plugin. Executei o script de importação novamente no meu banco de dados SMF, mas sem sucesso; ninguém consegue fazer login depois disso. No campo personalizado, consigo ver apenas um “-” em vez de algum hash.

Como outros usuários já apontaram antes, não tenho certeza do que fazer com isso:

user = User.find_by(username: 'user')
user.custom_fields['import_pass'] = '5f4dcc3b5aa765d61d8327deb882cf99'
user.save

Agradeço qualquer orientação. Esse código deve ir no arquivo do script de importação smf2.rb ou o quê?

Isso não vai funcionar. Mas não há necessidade de instalar o plugin durante a importação ou de criar um campo personalizado manualmente. Isso já deve ser tratado pelo script SMF2. Então, algo mais está acontecendo.

O código está lá como um exemplo para autores de scripts. Ele já está no script SMF2.

3 curtidas

Obrigado. Isso é ótimo. Então você quer dizer que, se eu remover o campo personalizado criado manualmente e apenas manter o plugin ativado, ele deve funcionar sozinho e capturar os hashes de senha quando necessário.

Existe algum log que possamos verificar para entender por que o plugin não está fazendo o que deveria?

O plugin se encarrega de interpretar e utilizar os campos personalizados que foram definidos pelo importador. Se os campos personalizados estiverem vazios ou ausentes, então o problema não é do plugin, mas sim do importador.

2 curtidas

O plugin deve ser instalado antes ou depois da migração? Ou isso não faz diferença?

TL;DR: depois.

Você deve instalar o plugin na instância que está realmente executando o fórum migrado.

Tivemos casos em que o plugin causou problemas quando instalado em uma instância que estava executando o script de migração, então recomendamos não instalá-lo lá.

4 curtidas

Olá,

Alguém já testou com hashes de senha do Auth0?

Não consigo testar agora porque a exportação de hashes de senha deles é um serviço pago para clientes, mas só queria saber se alguém já tentou antes de eu seguir por esse caminho.

Parece que as senhas deles são hashificadas usando bcrypt com 10 rodadas de salt.

Obrigado.

2 curtidas

Olá, por acaso algo mudou em relação ao suporte do Drupal 7?

Opa, pergunta de 2 anos que eu perdi!

O bcrypt deve ser suportado independentemente do número de rodadas, desde que as rodadas sejam codificadas da maneira usual ($2a$10$...)

Não, esse código não foi tocado em mais de 3 anos.

1 curtida