前言
作为数据库运维人员,需要理性看待数据库等保测评相关工作,完全按照测评结果对数据库进行整改,或完全忽略测评结果都是不可取的,过犹不及,物极必反。
比如MySQL和Oracle为了防止密码被暴力破解的连接错误密码延时功能,随着连续输错密码次数的增加,连接的延时也会逐渐增加,如果设置了此功能,可能未见其利,先见其害,开发能人员一般是不受运维人员约束的,如果某个程序使用错误的密码一直尝试连接数据库,并且启用了密码延时功能,势必会导致正常连接也出现延时的问题,所以要结合实际情况进行整改。
简介
本次主要讲解以下8部分内容
1.MySQL 用户密码加密方式;
环境说明
MySQL:5.7.44
1.MySQL 用户密码加密方式
5.7,默认使用插件mysql_native_password
create user cjc01@'localhost' identified with mysql_native_password by 'a';
也支持sha256_password
create user cjc02@'localhost' identified with sha256_password by 'a';
8.0开始,默认使用插件caching_sha2_password
create user cjc03@'localhost' identified with caching_sha2_password by 'a';
8.0之前,没有caching_sha2_password插件
ERROR 1524 (HY000): Plugin 'caching_sha2_password' is not loaded
其中,mysql_native_password 和 caching_sha2_password 插件默认使用什么加密算法:
mysql_native_password:使用的是SHA1加密算法。
链接如下:
https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_connection_phase_authentication_methods_native_password_authentication.html
SHA1( password ) XOR SHA1( "20-bytes random data from server" <concat> SHA1( SHA1( password )