MySQL密码策略审计,提升安全

背景:
审核密码是否符合规范,如大小写、数字、特殊字符等
安装插件:
1、在线启动
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
2、写入配置文件
plugin-load=validate_password.so
validate-password=FORCE_PLUS_PERMANENT
启用插件后,使用show plugins,可以查看到插件已经启用
启用插件后相应的变量如下:
配置参数说明:
  • validate_password_check_user_name:用密码和当前的用户名进行比较,匹配的话拒绝,默认OFF;当启用时:1、使用alter user/set password时会进行比较;2、系统采用的是当前会话user()和current_user()函数的值,意味着使用root去修改test账号的密码时,可以将密码设置为testxxxx,但不能设置为rootxxxx。3、仅仅比较用户名,不包括host;
  • validate-password=ON/OFF/FORCE/FORCE_PLUS_PERMANENT: 决定是否使用该插件(及强制/永久强制使用)。
  • validate_password_dictionary_file:插件用于验证密码强度的字典文件路径,策略为strong时存储指定不可用的密码。
  • validate_password_length:密码最小长度,默认8
  • validate_password_mixed_case_count:密码至少要包含的小写字母个数和大写字母个数,默认1
  • validate_password_number_count:密码至少要包含的数字个数,默认1
  • validate_password_special_char_count:密码至少要包含的特殊字符数,默认1
  • validate_password_policy:密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。(0/LOW:只检查长度。1/MEDIUM:检查长度、数字、大小写、特殊字符。2/STRONG:检查长度、数字、大小写、特殊字符字典文件)
测试:

 
建议配置:保持默认即可满足一般安全要求,默认至少1个数字、大小写字母各1,特殊字符1,密码长度大于等于8。
posted @ 2022-12-31 11:20  Harda  阅读(456)  评论(0)    收藏  举报