Mysql安全之基础合规

一、背景

某次某平台进行安全性符合型评估时,列出了数据库相关安全选项,本文特对此记录,以供备忘参考。

二、安全配置

2.1、数据库系统登录时的用户进行身份标识和鉴别;

1)对登录Mysql系统用户的密码复杂度是否有要求?

即需要满足密码复杂度要求,至少8位长度,大小写各1个,数字2个,特殊字符至少1个,密码有效期3个月。现场版本5.7.34;Mysql 5.6后自带validate_password.so插件(windows为validate_password.dll)

bash 复制代码
//检查是否启用命令,如果啥也没返回,就是没启用
mysql> SHOW VARIABLES LIKE 'validate_password%';
mysql> SELECT * from mysql.plugin ;
mysql> show plugins;

#安装插件
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so'; #Linux
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.dll';  #windows

#验证
mysql> SELECT * from mysql.plugin ;

#创建一个名为password_policy的新表,用于存储密码策略的相关信息
CREATE TABLE password_policy (
  id INT PRIMARY KEY AUTO_INCREMENT,
  uppercase_required BOOLEAN NOT NULL,
  lowercase_required BOOLEAN NOT NULL,
  number_required BOOLEAN NOT NULL,
  special_character_required BOOLEAN NOT NULL,
  min_length INT NOT NULL
);

完成后修改配置文件写入:

bash 复制代码
plugin-load-add=validate_password.so
validate-password=ON
validate_password_policy = 1   ##0(LOW), 1 (MEDIUM), 2 (STRONG)
validate_password_length = 8
validate_password_mixed_case_count = 1  #大小写字符长度,至少1个
validate_password_number_count = 2
validate_password_special_char_count = 1  #特殊字符至少1个
default_password_lifetime=180

#验证测试密码符合度
SELECT VALIDATE_PASSWORD_STRENGTH('Ad32weak$_@123');

规则说明:详情参看官网说明

策略 检查规则
0 or LOW Length(满足长度要求)
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file

2)是否启用ssl:show variables like '%ssl%';

相关推荐
kyle~3 分钟前
Linux---scp 安全文件传输
linux·网络·安全
艾莉丝努力练剑15 分钟前
【Python基础:语法第四课】列表和元组——Python 里的“爱情”:列表善变,元组长情
大数据·人工智能·windows·python·安全·pycharm·编辑器
程序猿_极客24 分钟前
MySQL 从入门到实战:DQL 查询语言详解(附案例 + 练习)
数据库·mysql·mysql入门
Guheyunyi2 小时前
智慧停车管理系统:以科技重塑交通效率与体验
大数据·服务器·人工智能·科技·安全·生活
tzhou644529 小时前
MySQL备份与恢复
数据库·mysql·adb
一过菜只因9 小时前
MySql Jdbc
android·数据库·mysql
思成不止于此9 小时前
MySQL 查询实战(三):排序与综合练习
数据库·笔记·学习·mysql
tebukaopu1489 小时前
mysql数据备份还原
数据库·mysql
zyxqyy&∞9 小时前
mysql代码小练-2
数据库·mysql
poemyang10 小时前
像Git一样管理数据:深入解析数据库并发控制MVCC的实现
mysql·事务·mvcc