Parece que sin querer he cargado el complemento de validación de contraseña en MySQL 5.7. Este complemento parece obligar a todas las contraseñas a cumplir ciertas reglas.
Me gustaría apagar esto.
He intentado cambiar la variable validate_password_length como se sugiere aquí en vano.
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
Me gustaría descargar el complemento o neutralizarlo de alguna manera.
SET GLOBAL validate_password_policy=LOW;
SET GLOBAL validate_password.policy=LOW;
Respuestas:
Esto es lo que hago para eliminar el complemento validar contraseña:
mysql -h localhost -u root -p
uninstall plugin validate_password;
UNINSTALL COMPONENT 'file://component_validate_password';
fuente
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
grep 'password' /var/log/mysqld.log | tail -1
y luego/usr/bin/mysql_secure_installation
. Después de hacerlo, puede ejecutar los comandos de srayhunter anteriores y luego ejecutarlosmysqladmin -u root -p'oldpassword' password newpass
para usar cualquier contraseña que desee.cracklib_password_check
en MariaDB actual.UNINSTALL COMPONENT 'file://component_validate_password';
mysql> SET GLOBAL validate_password_policy = 0;
Estoy usando MySQL v 8.0.12 y el comando para deshabilitar el componente de validación de contraseña es:
Para instalarlo nuevamente, el comando es:
Si solo desea cambiar la política del complemento de validación de contraseña:
fuente
Basándose en la respuesta de Sharfi, edite el archivo /etc/my.cnf y agregue solo esta línea:
Eso debería neutralizar suficientemente la validación según lo solicitado por el OP. Probablemente quiera reiniciar mysqld después de este cambio. Dependiendo de su sistema operativo, se vería algo así como:
validate_password_policy toma valores 0, 1 o 2 o las palabras LOW, MEDIUM y STRONG que corresponden a esos números. El valor predeterminado es MEDIO (1), que requiere que las contraseñas contengan al menos una letra mayúscula, una letra minúscula, un dígito y un carácter especial, y que la longitud total de la contraseña sea de al menos 8 caracteres. Cambiar a BAJO como sugiero aquí, entonces solo verificará la longitud, que si no se ha cambiado a través de otros parámetros, verificará una longitud de 8. Si también desea acortar ese límite de longitud, también puede agregar validate_password_length a El archivo my.cnf.
Para obtener más información sobre los niveles y detalles, consulte el documento de mysql .
Para MySQL 8, la propiedad ha cambiado de "validate_password_policy" a "validate_password.policy". Consulte el documento actualizado de mysql para obtener la información más reciente.
fuente
SET GLOBAL validate_password_policy=LOW;
Para deshabilitar las verificaciones de contraseña en mariadb-10.1.24 (Fedora 24) tuve que comentar una línea en el archivo /etc/my.cnf.d/cracklib_password_check.cnf :
luego reinicie el servicio mariadb:
fuente
Puede configurar esto en el archivo de configuración de mysql abrir
/etc/my.cnf
archivo En este archivo, todas las líneas que configuran la política de contraseña hacen que los comentarios sean comoDescomente y cambie el valor de las propiedades que desea cambiar.
fuente
Si desea hacer excepciones, puede aplicar el siguiente "pirateo". Se requiere un usuario con
DELETE
yINSERT
privilegio demysql.plugin
tabla del sistema.Descargo de responsabilidad de seguridad insípido: considere por qué hace que su contraseña sea más corta o más fácil y tal vez considere reemplazarla por una más compleja. Sin embargo, entiendo los momentos "son las 3AM y solo necesita trabajar", solo asegúrate de no construir un sistema de hacks, para que no seas pirateado
fuente
Además de la respuesta de ktbos:
Modifiqué el archivo mysqld.cnf y mysql no pudo iniciarse. ¡Resultó que estaba modificando el archivo incorrecto!
Así que asegúrese de que el archivo que modifique contenga etiquetas de segmento como [mysqld_safe] y [mysqld]. Debajo de este último hice lo sugerido y agregué la línea:
Esto funcionó perfectamente para resolver mi problema de no requerir caracteres especiales dentro de la contraseña.
fuente
Desinstalar:
Un complemento desinstalado no se muestra por
show plugins;
Instalar en pc:
Deshabilitado por la configuración:
La configuración solo puede deshabilitar un complemento si está instalado.
fuente
Estaba teniendo un problema en Ubuntu 18.04 en Mysql. Cuando necesitaba crear un nuevo usuario, la política siempre era alta.
La forma en que descubrí cómo deshabilitar, para futuros colegas que vienen a investigar, fue baja.
Inicie sesión en el servidor mysql como root
Establecer el nuevo tipo de validación
Reiniciar mysql
fuente
En algunas instalaciones, no puede ejecutar este comando hasta que haya restablecido la contraseña de root. No puede restablecer la contraseña de root hasta que ejecute este comando. Classic Catch-22.
Una solución que otros respondedores no mencionan es deshabilitar temporalmente el complemento a través de la configuración de mysql. En cualquiera
my.cnf
, en la[mysqld]
sección, agregue:y reinicie el servidor. Cambie la contraseña, vuelva a establecer el valor en 0 y reinicie nuevamente.
fuente
Para referencias y el futuro, uno debe leer el documento aquí https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-password-validation.html
Entonces deberías editar tu
mysqld.cnf
archivo, por ejemplo:Luego, agregue en la parte [mysqld], lo siguiente:
Básicamente, si edita su valor predeterminado, se verá así:
Luego, puede reiniciar:
Si olvida la
plugin-load-add=validate_password.so
parte, recibirá un error al reiniciar.¡A disfrutar!
fuente
Para mysql 8.0.7, vaya a su directorio mysql y luego use:
para configurar la opción de contraseña.
fuente
no es necesario detener / iniciar mysql
fuente