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%';

相关推荐
e***89017 小时前
MySQL 8.0版本JDBC驱动Jar包
数据库·mysql·jar
Ancelin安心21 小时前
FastJson反序列化和Shiro漏洞
java·运维·开发语言·安全·web安全·json·idea
p***199421 小时前
MySQL——内置函数
android·数据库·mysql
麦聪聊数据1 天前
如何用 B/S 架构解决混合云环境下的数据库连接碎片化难题?
运维·数据库·sql·安全·架构
橘颂TA1 天前
【MySQL】90% 开发者都踩过的坑:数据库数据类型选错有多可怕?
数据库·mysql·算法与结构
菩提小狗1 天前
第7天:信息打点-资产泄漏&CMS识别&Git监控&SVN&DS_Store&备份|【小迪安全】web安全|渗透测试|网络安全-2021
git·安全·svn
认真的薛薛1 天前
数据库-MHA-读写分离-redis
数据库·sql·mysql
YIN_尹1 天前
【MySQL】数据处理的瑞士军刀——常用的内置函数(下)
android·mysql
霖霖总总1 天前
[小技巧70]深入COUNT(*)、COUNT(1) 与 COUNT(字段):你以为的快,其实慢了
数据库·mysql
Amy187021118231 天前
绝缘监测装置AIM-T300 筑牢安全防线
安全