欢迎光临
我们一直在努力

设置密码复杂度

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)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。