更安全的 MySQL 8.0 之全新密码策略

栏目: 数据库 · 发布时间: 6年前

内容简介:从MySQL 8.0开始,安全策略有了重大加强,采用了新的密码插件,增加历史密码限制、双密码、密码强度约束等新特性。从MySQL 8.0开始,安全策略有了重大加强。对我们影响最直接的是,从MySQL 8.0里将caching_sha2_password作为默认的身份验证插件,而不再使用mysql_native_password插件。这时候如果再用旧版本客户端或协议连接,就会报告下面的错误:

导读

MySQL 8.0开始,安全策略有了重大加强,采用了新的密码插件,增加历史密码限制、双密码、密码强度约束等新特性。

从MySQL 8.0开始,安全策略有了重大加强。

对我们影响最直接的是,从MySQL 8.0里将caching_sha2_password作为默认的身份验证插件,而不再使用mysql_native_password插件。这时候如果再用旧版本客户端或协议连接,就会报告下面的错误:

$ mysql -uyejr -p
Enter password:
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/mysql/lib/plugin/caching_sha2_password.so, 2): image not found

临时解决方案是将该账号密码插件改回mysql_native_password即可,或者修改全局参数:

#my.cnf
[mysqld]
default_authentication_plugin = mysql_native_password

不过,还是强烈建议采用新的插件,因为它更安全,性能也更高。

其他的几个新密码策略主要有:

  • 支持密码过期策略,需要周期性修改密码

  • 增加历史密码检测机制,防止总是几个密码反复重用

  • 需要提供旧密码才能修改新密码,防止被篡改

  • 支持双密码机制,可以选择采用主密码还是第二密码连接,安全性更高

  • 增加密码强度约束,避免使用弱密码

下面我挑几个重点的来说下吧。

1、设置账号密码过期策略,要求定期修改密码

例如设置规则:密码默认42天过期(在美上市公司要求的SOX 404法案规则)

#my.cnf
[mysqld]
default_password_lifetime=42

当然了,也可以单独设置某个账户永不过期

[mysql@yejr.me]> ALTER USER yejr PASSWORD EXPIRE NEVER;

当密码过期后,该账户连接登入后,就会提示下面的告警:

[mysql@yejr.me]> \s
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
这时候,可以自己动手修改密码,例如:
[mysql@yejr.me]> alter user yejr@'%' IDENTIFIED WITH
  caching_sha2_password BY 'abcd';

这时候,为了防止使用弱密码或重用历史密码,就可以设置更严格的密码策略了。

2、设置历史密码检测机制,防止反复重用旧密码

例如设置规则:存储5个历史密码,且在180天内不能重复使用这些旧密码

#my.cnf
[mysqld]
#存储最近的6次密码
password_history=6
#最近6次密码1年内不得重用
password_reuse_interval=365

这时如果修改密码使用了最近一年内用过的历史密码,则会报告下面的错误:

[mysql@yejr.me]> alter user yejr identified with 
caching_sha2_password by 'abcd';
ERROR 3638 (HY000): Cannot use these credentials for 'yejr@%' because they contradict the password history policy

3、启用双密码机制

上面提到,在美上市公司要求每42天修改一次密码,这种情况下,可能我们会非常担心有某些地方忘了修改,从而没有很好的执行这个政策。

有了双密码机制后,就可以放心的修改密码了,因为相当于新旧密码都可以同时使用,那么可以留有一定的缓冲时间进行检查确认了,防止有些地方漏了修改。

可以执行下面这样的命令使用双密码:

[mysql@yejr.me]> alter user yejr@'%' IDENTIFIED WITH
  caching_sha2_password BY 'new-abc' RETAIN CURRENT PASSWORD;

最后建议大家早日升级到最好用的MySQL 8.0版本,享受新特性,以及更好的性能。

enjoy MySQL 8.0。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

电脑报(上下册)

电脑报(上下册)

电脑报社 / 西南师范大学出版社 / 2006-12-01 / 45.00元

全套上、下两册,浓缩2006年电脑报精华文章。附录包含70余篇简明IT应用指南,覆盖软件、硬盘、数码、网络四大领域。配赠权威实用的2006-2007中国计算机年鉴DVD光盘,近1.4GB海量信息与资源超值奉献。8大正版超值软件,涵盖系统维护、系统安全、办公应用、多媒体娱乐等四大领域。微软、腾讯、友立等知名厂商,新年献礼。提供2006-2007全系列硬件、数码产品资讯,兼具知识性与资料性。官方网站全......一起来看看 《电脑报(上下册)》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具