千家信息网

设置密码复杂度

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,1,密码验证插件安装要使服务器可以使用,插件库文件必须位于MySQL插件目录( plugin_dir 系统变量指定的目录)中。插件库文件基本名是 validate_password.so 。show
千家信息网最后更新 2025年02月02日设置密码复杂度1,密码验证插件安装

要使服务器可以使用,插件库文件必须位于MySQL插件目录( plugin_dir 系统变量指定的目录)中。插件库文件基本名是 validate_password.so

show variables like '%plugin%';

在运行时注册插件,请使用此语句

INSTALL PLUGIN validate_password SONAME 'validate_password.so';

INSTALL PLUGIN 加载插件,并将其注册到 mysql.plugins 系统表中,以便为每个后续的正常服务器启动加载插件。

要验证插件安装,请检查 INFORMATION_SCHEMA.PLUGINS 表或使用该 SHOW PLUGINS 语句 10:47:11(none)> SELECT PLUGIN_NAME, PLUGIN_STATUS FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME LIKE 'validate%'; +-------------------+---------------+ | PLUGIN_NAME | PLUGIN_STATUS | +-------------------+---------------+ | validate_password | ACTIVE | +-------------------+---------------+ 1)先查看mysql全局参数配置 该问题其实与mysql的validate_password_policy的值有关。 查看一下msyql密码相关的几个全局参数: 10:47:12(none)> select @@validate_password_policy; +----------------------------+ | @@validate_password_policy | +----------------------------+ | MEDIUM | +----------------------------+ 1 row in set (0.00 sec) 10:49:07(none)> SHOW VARIABLES LIKE 'validate_password%'; +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+ | validate_password_check_user_name | OFF | | 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.04 sec)

2)参数解释

validate_password_length

密码最小长度,参数默认为8,它有最小值的限制,最小值为:validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

validate_password_mixed_case_count

密码至少要包含的小写字母个数和大写字母个数。

validate_password_number_count

密码至少要包含的数字个数

validate_password_policy

密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

validate_password_special_char_count

密码至少要包含的特殊字符数。

3)改变密码策略,修改简单密码 set global validate_password_policy=0; set global validate_password_mixed_case_count=0; set global validate_password_number_count=0; set global validate_password_special_char_count=0;

set global validate_password_length=4;

修改简单密码:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root');

0