Ícone do site Cátia Kitahara

Problemas de login com o WordPress 2.5

Após um longo período sem publicar, volto com uma dica sobre o WordPress. Essa dica nasceu a partir da solução encontrada para um problema que passei com o site da Comunidade WordPress-br. Ela serve para aqueles com problemas de login em aplicativos que compartilham a sua tabela de usuários com um blog WordPress.

O Problema

No site da Comunidade WordPress-br temos uma ferramenta de tradução colaborativa online, o Entrans, que compartilha a tabela de usuários com o nosso blog. Depois de fazermos a atualização da versão 2.3 para 2.5, algumas pessoas não conseguiram mais fazer login no Entrans. Quebramos a cabeça para descobrir porque, assim, de repente, passamos a ter esse problema. Não percebemos logo que isso ocorreu após a atualização, pois ela foi feita depois que encerramos a tradução do WordPress 2.5, período em que diminuiu consideravelmente o acesso ao nosso site.

Apesar das pessoas não conseguirem mais fazer login no Entrans, elas ainda conseguiam fazer login no blog, o que nos fez erradamente pensar que o problema estava no Entrans. E não eram todos os usuários que não conseguiam mais fazer login.

Depois de alguns testes, percebemos que em nosso banco de dados algumas senhas estavam estranhas, com caracteres diferentes. Também percebemos que ao inserir um novo registro diretamente pelo phpMyAdmin, ele era aceito pelo Entrans, enquanto que os novos registros feitos através do WordPress não eram. Portanto chegamos à conclusão que o problema estava no WordPress.

A Solução

Isso me fez lembrar que entre as novidades implementadas no WP 2.5, uma delas tinha a ver com senhas mais seguras. Procurei no site oficial do WordPress pela informação precisa a esse respeito e encontramos a solução. Nesse novo release do WordPress, a forma como as senhas são “protegidas” mudou do antigo hash MD5 para o phpass. As senhas dos novos registros já são geradas assim, enquanto que as antigas são alteradas assim que o usuário faz login no WordPress 2.5. E esse tipo de senha o Entrans não reconhece, por isso para todos os novos usuários e alguns antigos não era possível fazer o login.

Uma solução seria fazer com que o Entrans passasse também a aceitar esse tipo de hash, mais seguro. Mas no nosso caso essa manobra não valeria à pena. Ainda bem que a equipe de desenvolvedores da Automatic não nos deixou na mão e sempre estão preocupados com a compatibilidade do programa. Eles mesmos já desenvolveram um plugin que retorna ao antigo hash, o MD5 Password Hashes. Todas as senhas convertidas para o hash phpass retornam para o MD5 assim que o usuário faz login no WordPress. Simples assim.

Sair da versão mobile