Πώς να διορθώσετε το "ΣΦΑΛΜΑ MySQL 1819 (HY000):" στο Linux


Κατά τη δημιουργία ενός χρήστη MySQL με σχετικά αδύναμο κωδικό πρόσβασης, ενδέχεται να εμφανιστεί το σφάλμα "MySQL ERROR 1819 (HY000): Ο κωδικός πρόσβασής σας δεν ικανοποιεί τις τρέχουσες απαιτήσεις πολιτικής. Τεχνικά, δεν πρόκειται για σφάλμα, αλλά για μια ειδοποίηση ότι χρησιμοποιείτε κωδικό πρόσβασης που δεν πληροί τις προτεινόμενες απαιτήσεις πολιτικής κωδικού πρόσβασης.

Με άλλα λόγια, χρησιμοποιείτε έναν αδύναμο κωδικό πρόσβασης που μπορεί εύκολα να μαντέψει ή να εξαναγκαστεί. Ο ενσωματωμένος μηχανισμός ασφαλείας αποθαρρύνει τους χρήστες από τη δημιουργία αδύναμων κωδικών πρόσβασης που μπορούν να καταστήσουν τη βάση δεδομένων σας επιρρεπή σε παραβιάσεις.

Για παράδειγμα, αντιμετώπισα το σφάλμα κατά τη δημιουργία ενός χρήστη όπως φαίνεται

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

Δεν είναι παράλογο ότι ο κωδικός πρόσβασης είναι εξαιρετικά αδύναμος και μπορεί να αποτελέσει κίνδυνο ασφάλειας.

Πώς να λύσετε το ΣΦΑΛΜΑ MySQL 1819 (HY000) στο Linux

Η βάση δεδομένων MySQL συνοδεύεται από μια προσθήκη validate_password η οποία όταν είναι ενεργοποιημένη, επιβάλλει μια πολιτική επικύρωσης κωδικού πρόσβασης. Υπάρχουν 3 επίπεδα πολιτικής επικύρωσης κωδικού πρόσβασης που επιβάλλονται από το πρόσθετο.

  • ΧΑΜΗΛΟ: Επιτρέπει στους χρήστες να ορίσουν έναν κωδικό πρόσβασης με 8 ή λιγότερους χαρακτήρες.
  • MEDIUM: Επιτρέπει στους χρήστες να ορίσουν έναν κωδικό πρόσβασης 8 ή λιγότερου χαρακτήρων με ανάμεικτα πεζά και ειδικούς χαρακτήρες.
  • STRONG: Επιτρέπει στους χρήστες να ορίσουν έναν κωδικό πρόσβασης που έχει όλα τα χαρακτηριστικά ενός κωδικού πρόσβασης μεσαίου επιπέδου με τη συμπερίληψη ενός αρχείου λεξικού.

Από προεπιλογή, η πολιτική κωδικού πρόσβασης έχει οριστεί σε MEDIUM. Μπορείτε να επιβεβαιώσετε το επίπεδο πολιτικής κωδικού πρόσβασης, εκτελώντας την εντολή:

SHOW VARIABLES LIKE 'validate_password%';

Εάν εκτελέσετε την εντολή και λάβετε το κενό σύνολο εξόδου, τότε το πρόσθετο δεν είναι ακόμη ενεργοποιημένο.

Για να ενεργοποιήσετε την προσθήκη validate_password, εκτελέστε τις παρακάτω εντολές.

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

Για να επιβεβαιώσετε ότι το πρόσθετο είναι ενεργοποιημένο, εκτελέστε την εντολή.

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

Θα πρέπει να λάβετε την έξοδο που φαίνεται παρακάτω:

Για να επιλύσετε το πρόβλημα, πρέπει να ορίσετε την πολιτική επικύρωσης κωδικού πρόσβασης στο χαμηλότερο επίπεδο. Ξέρω ότι αυτό ακούγεται αντιφατικό, καθώς δημιουργεί μια λεωφόρο για τον ορισμό αδύναμων κωδικών πρόσβασης που μπορεί τελικά να προκαλέσει την παραβίαση της βάσης δεδομένων σας από χάκερ.

Ωστόσο, αν εξακολουθείτε να επιμένετε να έχετε τον τρόπο σας, ορίστε τι μπορείτε να κάνετε.

Πώς να αλλάξετε την πολιτική επικύρωσης κωδικού πρόσβασης MySQL

Για να επιλύσετε το σφάλμα MySQL ERROR 1819 (HY000), ορίστε μια χαμηλότερη πολιτική επικύρωσης κωδικού πρόσβασης όπως φαίνεται.

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

Στη συνέχεια, μπορείτε να επιβεβαιώσετε το επίπεδο πολιτικής επικύρωσης κωδικού πρόσβασης.

SHOW VARIABLES LIKE 'validate_password%';

Τώρα μπορείτε να προχωρήσετε και να ορίσετε έναν σχετικά αδύναμο κωδικό πρόσβασης σύμφωνα με την επιθυμία σας.

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

Για να επιστρέψετε στο επίπεδο πολιτικής κωδικού πρόσβασης «MEDIUM», απλώς επικαλέστε την εντολή:

mysql> SET GLOBAL validate_password_policy=MEDIUM;
συμπέρασμα

Προσωπικά, δεν θα συνιστούσα να ορίσετε μια πολιτική κωδικού πρόσβασης χαμηλότερου επιπέδου για προφανείς λόγους. Είτε πρόκειται για κανονικό χρήστη είτε για χρήστη βάσης δεδομένων, συνιστάται να ορίζετε πάντα έναν ισχυρό κωδικό πρόσβασης MySQL με περισσότερους από 8 χαρακτήρες με συνδυασμό κεφαλαίων, πεζών, αριθμητικών και ειδικών χαρακτήρων.

Αυτός ο οδηγός είναι για χάρη εκείνων που θέλουν να μάθουν πώς να περιηγηθούν σε ένα τέτοιο σφάλμα, διαφορετικά, συνιστάται πάντα να ορίσετε έναν ισχυρό κωδικό πρόσβασης.