您的位置:首页 > 数据库 > 数据库管理

如何让mysql强制设置复杂的密码

更多 2016/7/3 来源:数据库管理学习浏览量:861
学习标签: mysql
本文导读:在维护mysql数据库时,如果密码设置的太简单,则对于系统不太安全,通常我们都会设置比较复杂的密码,但是,mysql对于用户设置的简单密码,只会提示,仍然是可以保存的,这样对数据库的安全就有一定的隐患,我们可以通过相关的设置,如果设置的密码过于简单,则不能保存。

该功能是在5.5以后的mysql版本才引入的插件,默认源码安装和二进制安装都没有启用该功能,如果没有开启该功能设置简单密码mysql只是会给予提示但还是会允许通过。

 

一、启用强制设置复杂的密码功能

在my.cnf文件中加入

 

SQL 代码   复制

plugin-load=validate_password.so 
validate-password=FORCE_PLUS_PERMANENT

 

二、查询与强制设置复杂的密码相关的设置

 


show variables like 'validate%';
 
 
结果类似如图
 
 
 
 
三、与强制设置复杂的密码相关的设置说明
 
 
1、validate_password_policy

代表的密码策略,可配置的值有以下:默认是MEDIUM


0 or LOW 仅需需符合密码长度(由参数validate_password_length指定)

1 or MEDIUM 满足LOW策略,同时还需满足至少有1个数字,小写字母,大写字母和特殊字符

2 or STRONG 满足MEDIUM策略,同时密码不能存在字典文件(dictionary file)中

 

2、validate_password_dictionary_file

用于配置密码的字典文件,当validate_password_policy设置为STRONG时可以配置密码字典文件,字典文件中存在的密码不得使用。

 

3、validate_password_length

用来设置密码的最小长度,默认值是8最小是0

 

4、validate_password_mixed_case_count

当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少同时拥有的小写和大写字母的数量,默认是1最小是0;默认是至少拥有一个小写和一个大写字母。

 

5、validate_password_number_count

当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少拥有的数字的个数,默认1最小是0


6、validate_password_special_char_count

当validate_password_policy设置为MEDIUM或者STRONG时,密码中至少拥有的特殊字符的个数,默认1最小是0
 

 

四、实例

 

经过相关设置后,分别如下设置密码时,会报如下错误:第一个密码是长度不够且没有大写字母,第二个密码长度够了但是没有大写字母

 

收藏
133
很赞
388