Comment désactiver la validation du mot de passe mysql?

Il semble que j'ai peut-être chargé par inadvertance le plugin de validation de mot de passe dans MySQL 5.7. Ce plugin semble forcer tous les mots de passe à se conformer à certaines règles.

Je voudrais éteindre cela.

J'ai essayé de changer la variable validate_password_length comme suggéré ici en vain.

mysql> SET GLOBAL validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)

mysql> SET PASSWORD FOR 'app' = PASSWORD('abcd');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

J'aimerais décharger le plugin ou neutre en quelque sorte.

113
demandé sur Community 2016-03-30 09:17:53

9 réponses

Voici ce que je fais pour supprimer le plugin validate password:

  1. Connectez - vous au serveur mysql en tant que root mysql -h localhost -u root -p
  2. exécutez la commande sql suivante: uninstall plugin validate_password;
336
répondu Ray Hunter 2016-07-23 05:51:07

En S'appuyant sur la réponse de Sharfi, éditez le fichier/etc / my.fichier cnf et ajoutez juste cette ligne:

validate_password_policy=LOW

Cela devrait neutraliser suffisamment la validation comme demandé par L'OP. vous voudrez probablement redémarrer mysqld après ce changement. Selon votre système d'exploitation, cela ressemblerait à quelque chose comme:

sudo service mysqld restart

Validate_password_policy prend les valeurs 0, 1 ou 2 ou les mots LOW, MEDIUM et STRONG qui correspondent à ces nombres. La valeur par défaut est MEDIUM (1) qui nécessite des mots de passe contient au moins une lettre MAJUSCULE, Une lettre minuscule, un chiffre et un caractère spécial, et que la longueur totale du mot de passe est d'au moins 8 caractères. Passer à bas comme je le suggère ici ne vérifiera que la longueur, qui, si elle n'a pas été modifiée par d'autres paramètres, vérifiera une longueur de 8. Si vous voulez raccourcir cette limite de longueur aussi, vous pouvez également ajouter validate_password_length dans le my.cnf de fichier.

Pour plus d'informations sur les niveaux et les détails, voir le document mysql .


Pour MySQL 8, la propriété est passée de "validate_password_policy"à" validate_password.politique". Voir la mise à jour mysql doc pour les dernières informations.

27
répondu ktbos 2018-09-12 09:49:34

J'utilise MySQL v 8.0.12 et la commande pour désactiver Le composant de validation du mot de passe est:

UNINSTALL COMPONENT 'file://component_validate_password';

Pour l'installer à nouveau, la commande est:

INSTALL COMPONENT 'file://component_validate_password';

Si vous voulez juste changer la politique du plugin de validation de mot de passe:

SET GLOBAL validate_password.policy = 0;   // For LOW
SET GLOBAL validate_password.policy = 1;   // For MEDIUM
SET GLOBAL validate_password.policy = 2;   // For HIGH
10
répondu Akshay Gaur 2018-07-28 23:19:15

Pour désactiver la vérification des mots de passe dans mariadb-10.1.24 (Fedora 24), j'ai dû commenter une ligne dans /etc/my.cnf.d / cracklib_password_check.fichier cnf :

;plugin-load-add=cracklib_password_check.so

Puis redémarrez le service mariadb:

systemctl restart mariadb.service
6
répondu lav 2017-06-21 18:53:02

Vous pouvez le configurer dans le fichier de configuration mysql ouvrir le fichier /etc/my.cnf Dans ce fichier, toutes les lignes qui configurent la stratégie de mot de passe font les commentaires comme

#validate-password=FORCE_PLUS_PERMANENT
#validate_password_length=10
#validate_password_mixed_case_count=1
#validate_password_number_count=1
#validate_password_policy=MEDIUM

Décommentez et modifiez la valeur des propriétés que vous souhaitez modifier.

3
répondu Sharfi 2018-04-01 04:51:33

Si vous voulez faire des exceptions, vous pouvez appliquer le "hack"suivant. Il requiert un utilisateur avec DELETE et INSERT privilège pour mysql.plugin table système.

uninstall plugin validate_password;
SET PASSWORD FOR 'app' = PASSWORD('abcd');
INSTALL PLUGIN validate_password SONAME 'validate_password.so';

Avertissement de sécurité Fade: Considérez pourquoi vous rendez votre mot de passe plus court ou plus facile et envisagez peut-être de le remplacer par un mot de passe plus complexe. Cependant, je comprends les moments "il est 3AM et a juste besoin de travailler", assurez-vous de ne pas construire un système de hacks, de peur que vous ne soyez vous-même piraté

2
répondu SeanDowney 2017-03-13 21:03:51

Suite à la réponse de ktbos:

J'ai modifié le mysqld.le fichier cnf et mysql n'ont pas pu démarrer. Il s'est avéré que je modifiais le mauvais fichier!

Assurez-vous donc que le fichier que vous modifiez contient des balises de segment comme [mysqld_safe] et [mysqld]. Sous ce dernier j'ai fait comme suggéré et ajouté la ligne:

validate_password_policy=LOW

Cela a parfaitement fonctionné pour résoudre mon problème de ne pas nécessiter de caractères spéciaux dans le mot de passe.

2
répondu Paul Pritchard 2017-05-30 10:22:44

J'avais un problème sur Ubuntu 18.04 sur Mysql. Quand j'avais besoin de créer un nouvel utilisateur, la Politique était toujours élevée.

La façon dont je compris comment désactiver, pour les futurs collègues qui viennent enquêter, a été mis à faible.

Connectez - vous au serveur mysql en tant que root

mysql -h localhost -u root -p

Définit le nouveau type de validation

SET GLOBAL validate_password_policy=0; //For Low

Redémarrez mysql

sudo service mysql restart
0
répondu vic.py 2018-07-29 18:23:00

Pour mysql 8.0.7, allez dans votre répertoire mysql, puis utilisez:

sudo bin/mysql_secure_installation

Pour configurer l'option Mot de passe.

-1
répondu J Tang 2018-08-08 10:22:57