GNU/Linux >> Linux Esercitazione >  >> Linux

Correzione – MySQL ERROR 1819 (HY000):la tua password non soddisfa i requisiti della politica corrente

Come avrai notato, ti verrà chiesto di abilitare VALIDATE PASSWORD componente durante la impostazione della password per la radice di MySQL utente. Se abilitato, il componente Convalida password verificherà automaticamente la forza della password fornita e imporrà agli utenti di impostare solo le password sufficientemente sicure. Se fornisci una password debole, riscontrerai un errore come questo - ERROR 1819 (HY000): Your password does not satisfy the current policy requirements .

Tecnicamente parlando, in realtà non è un errore. Si tratta di un meccanismo di sicurezza integrato che notifica agli utenti di fornire solo password complesse in base agli attuali requisiti delle norme sulle password.

Lascia che ti mostri un esempio. Accedo al server MySQL come root utente che utilizza il comando:

$ mysql -u root -p

Crea un utente del database con una password debole:

mysql> create user 'ostechnix'@'localhost' identified by 'mypassword';

E incontro il seguente errore:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

Vedere? Il Validate Password componente non mi consente di creare un utente con una password debole (ad esempio mypassword in questo caso).

Continuerai a ricevere questo errore fino a quando la password non soddisfa i requisiti dell'attuale politica sulle password o non disabiliti Validate Password componente. Vedremo come farlo nella sezione seguente.

Correzione - MySQL ERROR 1819 (HY000):la tua password non soddisfa gli attuali requisiti della policy

Esistono tre livelli di criteri di convalida della password applicati quando Validate Password il plug-in è abilitato:

  • BASSO Lunghezza>=8 caratteri.
  • MEDIO Lunghezza>=8, numerici, maiuscole e minuscole e caratteri speciali.
  • FORTE Lunghezza>=8, numerici, maiuscole e minuscole, caratteri speciali e file dizionario.

In base a questi livelli di criteri, è necessario impostare una password appropriata. Ad esempio, se il criterio di convalida della password è impostato su Medio, è necessario impostare una password che contenga almeno 8 caratteri inclusi numeri, lettere minuscole, maiuscole e caratteri speciali.

Per prima cosa dobbiamo trovare il livello di policy della password corrente. Per fare ciò, esegui il comando seguente per mostrare le variabili di sistema del plug-in di convalida password:

mysql> SHOW VARIABLES LIKE 'validate_password%';

Risultato di esempio:

+--------------------------------------+--------+
| 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.09 sec)

Come puoi vedere, il livello di password attualmente applicato è Medio . Quindi la nostra password dovrebbe essere lunga 8 caratteri con un numero, maiuscole e minuscole miste e caratteri speciali.

Imposterò questa password - Password123#@! usando il comando:

mysql> create user 'ostechnix'@'localhost' identified by 'Password123#@!';
Query OK, 0 rows affected (0.36 sec)

Vedere? Ora funziona! Quindi, per correggere "ERROR 1819 (HY000)... " errore, è necessario inserire una password secondo l'attuale politica di convalida della password.

Modifica la politica di convalida della password in MySQL

Puoi anche risolvere il problema "ERROR 1819 (HY000)... " impostando un criterio password di livello inferiore.

Per farlo, esegui il seguente comando dal prompt di mysql:

mysql> SET GLOBAL validate_password.policy = 0;

Oppure,

mysql> SET GLOBAL validate_password.policy=LOW;

Quindi controlla se la politica di convalida della password è stata modificata in basso:

mysql> SHOW VARIABLES LIKE 'validate_password%';

Risultato di esempio:

+--------------------------------------+-------+
| 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             | LOW   |
| validate_password.special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)

Ora puoi creare un utente con una password debole come di seguito:

mysql> create user 'senthil'@'localhost' identified by 'password';

Per tornare alla politica di livello MEDIO, esegui semplicemente questo comando dal prompt di mysql:

mysql> SET GLOBAL validate_password.policy=MEDIUM;

Se la politica della password non cambia, esci dal prompt di mysql e riavvia il servizio mysql dalla finestra del tuo Terminale:

$ sudo systemctl restart mysql

Ora dovrebbe funzionare.

Avviso: Uno dei nostri lettori ha sottolineato che c'è un errore di battitura nel seguente comando:

mysql> SET GLOBAL validate_password.policy=LOW;

Dovrebbe essere:

mysql> SET GLOBAL validate_password_policy=LOW;

Nota il carattere di sottolineatura nel comando precedente. Dato che ho cancellato l'installazione, non ho modo di verificare questo comando. Ma presumo che il comando sia stato modificato nelle versioni più recenti di MySQL.

Disabilita la politica di convalida della password

Se desideri creare utenti con password debole, disabilita semplicemente il Validate Password componente del tutto e riattivarlo dopo aver creato gli utenti.

Accedi al server MySQL:

$ mysql -u root -p

Per disabilitare temporaneamente il componente Validate Password, eseguire il comando seguente dal prompt di MySQL:

mysql> UNINSTALL COMPONENT "file://component_validate_password";

Crea gli utenti con qualsiasi password di tua scelta:

mysql> create user 'kumar'@'localhost' identified by '123456';

Infine, abilita il componente Convalida password:

mysql> INSTALL COMPONENT "file://component_validate_password";

Personalmente non consiglio di modificare la politica su un livello inferiore o di disabilitare la politica della password. Che si tratti di un utente del database o di un utente normale, utilizza sempre una password complessa con più di 8 caratteri, inclusi numeri, maiuscole e minuscole e caratteri spaziali.

Conclusione

In questa guida, abbiamo appreso di uno degli errori comuni di MySQL:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements e come risolverlo in Linux. Abbiamo anche imparato come disabilitare la politica delle password per consentire password deboli.

Lettura correlata:

  • Installa Apache, MySQL, PHP (stack LAMP) su Ubuntu 20.04 LTS
  • Installa Nginx, MySQL, PHP (stack LEMP) su Ubuntu 20.04 LTS

Linux
  1. Risolto il problema Il repository non ha un file di rilascio Errore in Ubuntu - Guida passo passo?

  2. Correzione dell'errore di classe ZipArchive non trovato [PHP 7]

  3. Correggi l'errore PHP:non è sicuro fare affidamento sulle impostazioni del fuso orario del sistema

  4. La richiamata registrata non corrisponde all'URL fornito – Correzione dell'errore WSO2

  5. Errore nell'utilizzo di GRANT con IDENTIFIED by password in MySQL

Gestisci le tue password nel terminale Linux

Come risolvere il problema:l'utente non è nell'errore del file sudoers

Come risolvere l'errore "Il repository non ha un file di rilascio" in Ubuntu

Risolto il problema con "Implementazione del controller USB 2.0 non trovata!" Errore VirtualBox

Come risolvere l'errore "Il repository non ha un file di rilascio" in Ubuntu

MySQL fallisce su:mysql ERROR 1524 (HY000):il plugin 'auth_socket' non è caricato