Kako popraviti "MySQL POGREŠKU 1819 (HY000):" u Linuxu


Kada kreirate MySQL korisnika s relativno slabom lozinkom, mogli biste naići na pogrešku 'MySQL POGREŠKA 1819 (HY000): Vaša lozinka ne zadovoljava trenutne zahtjeve pravila'. Tehnički, ovo nije pogreška, već obavijest da koristite lozinku koja ne ispunjava preporučene zahtjeve pravila za lozinku.

Drugim riječima, koristite slabu lozinku koja se lako može pogoditi ili nametnuti. Ugrađeni sigurnosni mehanizam obeshrabruje korisnike od stvaranja slabih lozinki koje mogu vašu bazu podataka učiniti sklonom provalima.

Na primjer, naišao sam na pogrešku prilikom kreiranja prikazanog korisnika

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Nije pametno da je lozinka izuzetno slaba i da može predstavljati sigurnosni rizik.

Kako riješiti MySQL POGREŠKU 1819 (HY000) u Linuxu

Baza podataka MySQL isporučuje se s dodatkom validate_password koji, kada je omogućen, provodi politiku provjere valjanosti lozinke. Postoje 3 razine pravila provjere valjanosti lozinke koje nameće dodatak.

  • LOW: Omogućuje korisnicima postavljanje lozinke od 8 ili manje znakova.
  • SREDNJE: Omogućuje korisnicima postavljanje lozinke od 8 ili manje znakova s miješanim malim i malim slovima i posebnim znakovima.
  • JAKA: Omogućuje korisnicima postavljanje lozinke koja ima sve atribute lozinke srednje razine uz uključivanje datoteke rječnika.

Prema zadanim postavkama pravilo zaporke postavljeno je na SREDNJE. Razinu politike lozinke možete potvrditi izvršavanjem naredbe:

SHOW VARIABLES LIKE 'validate_password%';

Ako pokrenete naredbu i dobijete izlazni prazan skup, tada dodatak još nije omogućen.

Da biste omogućili dodatak validate_password, pokrenite donje naredbe.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
mysql> install plugin validate_password soname 'validate_password.so';

Da biste potvrdili da je dodatak aktiviran, pokrenite naredbu.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';

Trebali biste dobiti rezultat prikazan u nastavku:

Da biste riješili problem, morate postaviti politiku provjere valjanosti lozinke na najnižu razinu. Znam da ovo zvuči kontraintuitivno jer stvara put za postavljanje slabih zaporki što u konačnici može dovesti do toga da hakeri ugroze vašu bazu podataka.

Međutim, ako i dalje inzistirate na svome, evo što možete učiniti.

Kako promijeniti politiku provjere valjanosti lozinke MySQL

Da biste riješili pogrešku MySQL ERROR 1819 (HY000), postavite nižu politiku provjere valjanosti lozinke kao što je prikazano.

mysql> SET GLOBAL validate_password_policy=LOW;
OR
mysql> SET GLOBAL validate_password_policy=0;

Nakon toga možete potvrditi razinu politike provjere valjanosti lozinke.

SHOW VARIABLES LIKE 'validate_password%';

Sada možete nastaviti i dodijeliti relativno slabu lozinku prema vašoj želji.

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Za povratak na 'SREDNJU' razinu pravila zaporke, jednostavno pozovite naredbu:

mysql> SET GLOBAL validate_password_policy=MEDIUM;
Zaključak

Osobno ne bih preporučio postavljanje politike zaporke niže razine iz očitih razloga. Bez obzira radi li se o normalnom korisniku ili korisniku baze podataka, preporuča se uvijek postaviti jaku MySQL lozinku s više od 8 znakova s kombinacijom velikih, malih slova, numeričkih i posebnih znakova.

Ovaj vodič je za one koji žele znati kako riješiti takvu pogrešku, inače se uvijek preporučuje postavljanje jake lozinke.