facebook-ictlaboratory.com

Wybierz swój język

MySQL - validate password

Po instalacji bazy danych domyślne ustawienia są bardzo restrykcyjne dla tworzonych haseł. Wytłumaczę jak je zmniejszyć.


Test

Trzeba najpierw się zalogować do bazy danych:

ict@serv:~$ mysql -u root -p
Enter password:

Po wpisaniu hasła wyświetl zmienne globalne dotyczące validacji hasła:

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.00 sec)

Z tego opisu wynika jasno, że długość hasła musi być minimum 8 znaków, Musi mieć wymieszaną wielkość liter, zawierać cyfrę i znak specjalny.

Zmiana ustawień

Do testów takie restrykcje nie są tobie potrzebne - możesz je zmniejszyć. służy do tego polecenie SET GLOBAL

SET GLOBAL validate_password.length = 6;
SET GLOBAL validate_password.mixed_case_count = 0;  
SET GLOBAL validate_password.number_count = 0;
SET GLOBAL validate_password.policy = LOW;
SET GLOBAL validate_password.special_char_count = 0;

Test

Po tym zabiegu wyświetlmy jeszcze raz zmienne:

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password.check_user_name    | ON    |
| validate_password.dictionary_file    |       |
| validate_password.length             | 6     |
| validate_password.mixed_case_count   | 0     |
| validate_password.number_count       | 0     |
| validate_password.policy             | LOW   |
| validate_password.special_char_count | 0     |
+--------------------------------------+-------+
7 rows in set (0.01 sec)

Od razu widać zmianę. Jedynym wymogiem jest to aby hasło miało minimum 6 liter.