Mysql
 sql >> Base de données >  >> RDS >> Mysql

Le mot de passe ne vérifie pas la sensibilité à la casse

Votre classement MySQL est probablement insensible à la casse . Remplacez la colonne dans laquelle le mot de passe est stocké par un classement sensible à la casse.

Quelques règles de base :

  • Lorsqu'un classement se termine par _ci, il n'est pas sensible à la casse.
  • Lorsqu'un classement se termine par _cs, il est sensible à la casse.

Exemple :

  • utf8_general_ci est insensible à la casse.
  • utf8_bin est sensible à la casse

Cependant, une remarque importante

Si vous rencontrez ce problème, vous probablement stockez les mots de passe de manière erronée . Vous ne devez pas stocker les mots de passe en texte brut, mais vous devez stocker un hachage du mot de passe à la place et le saler correctement.

Ensuite, lorsqu'un utilisateur se connecte, vous hachez son entrée et comparez le hachage avec ce que contient votre base de données. Lorsque les deux sont égaux, l'utilisateur a probablement saisi un mot de passe correct.