Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A senha não está verificando a distinção entre maiúsculas e minúsculas


Seu MySQL collation provavelmente não diferencia maiúsculas de minúsculas . Altere a coluna em que a senha está armazenada para um agrupamento que diferencia maiúsculas de minúsculas.

Algumas regras de ouro:
  • Quando uma ordenação termina em _ci, ela não diferencia maiúsculas de minúsculas.
  • Quando um agrupamento termina em _cs, ele diferencia maiúsculas de minúsculas.

Exemplo:
  • utf8_general_ci não diferencia maiúsculas de minúsculas.
  • utf8_bin diferencia maiúsculas de minúsculas

No entanto, uma observação importante


Se você está enfrentando esse problema, você está provavelmente armazenando as senhas incorretamente . Você não deve armazenar as senhas em texto simples, mas deve armazenar um hash da senha e salvá-lo corretamente.

Então, quando um usuário faz login, você faz o hash de sua entrada e compara o hash com o que seu banco de dados contém. Quando ambos são iguais, o usuário provavelmente digitou uma senha correta.