您的位置:首页 > 数据库 > MySQL

MySQL validate_password 插件

2016-03-30 10:21 369 查看
从创建用户说起:

  如我们在mysql中可以用grant all on *.* to userd@'localhost' identified by '123'; 来创建一个userd用户,虽然用户是创建成功了,但是这个用户的密码强度

  太低了非常容易被破解;为了把问题解决在摇篮里,最好是在创建用户时就验证密码强度,如果强度达不到要求就不允许创建。为了达到这个目地validate_password

  插件应运而生。

安装validate_password插件:

  install plugin valaidte_password soname 'validate_password.so';

用于控制validate_password行为系统参数:

  这些参数是要安装好validate_password 插件后才能通过show variables like 'validate_password%';看到。

  001、validate_password_policy 这个参数用于控制validate_password的验证策略 0-->low 1-->MEDIUM 2-->strong。

  002、validate_password_length密码长度的最小值(这个值最小要是4)。

  003、validate_password_number_count 密码中数字的最小个数。

  004、validate_password_mixed_case_count大小写的最小个数。

  005、validate_password_special_char_count 特殊字符的最小个数。

  006、validate_password_dictionary_file 字典文件

各个参数是如何通过配合来完成用户验证的:

  001、当validate_password_policy=0时 这个时候只对密码长度做验证,也就是说它和validate_password_length一起配合起来完成用户验证。

     这种情况下只要密码达到validate_password_length指定的长度后就行。

  002、当valdiate_password_policy=1时 这个时候首先要满足的是validate_password_policy=0时的验证要求。然后现去验证密码中的

     数字个数,大小写个数,特殊字符个数。这些又分别由validate_password_number_count,validate_password_mixed_case_count,

     validate_password_special_char_count 这几个参数来控制。

  003、validate_password_policy=2 这个时候它首先是要满足前面说到的0、1 的要求;然后它还追加了一个,对于密码中任意连续4个(或4个让上)字符不

     得是字典中的单词。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: