Mysql
 sql >> база данни >  >> RDS >> Mysql

Паролата не проверява чувствителността на малки и малки букви

Вашата MySQL колекция вероятно не е чувствителна към главни букви . Променете колоната, в която се съхранява паролата, на съпоставяне, чувствително към главни букви.

Някои основни правила:

  • Когато съпоставянето завършва на _ci, то не е чувствително към главни букви.
  • Когато съпоставяне завършва с _cs, то е чувствително към главните букви.

Пример:

  • utf8_general_ci е независимо от главните букви.
  • utf8_bin е чувствителен към малки и големи

Важна забележка обаче

Ако срещате този проблем, вероятно съхранявате паролите грешно . Не трябва да съхранявате паролите в обикновен текст, но вместо това трябва да съхранявате хеш на паролата и да я солите правилно.

След това, когато потребител влезе, вие хеширате неговия запис и сравнявате хеша с това, което съдържа вашата DB. Когато и двете са равни, потребителят вероятно е въвел правилна парола.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да изчистя паметта, докато изпълнявам дълъг PHP скрипт? опитах unset()

  2. как да се справяме с акценти и странни знаци в база данни?

  3. PHP mySQL - Вмъкване на нов запис в таблица с автоматично увеличение на първичния ключ

  4. Може ли JavaScript да се свърже с MySQL?

  5. DataSourceInitializer не работи при Spring boot 1.2