开发者学堂课程【云数据库 MYSQL 快速入门:云数据库安全设置】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/13/detail/37
云数据库安全设置
内容介绍:
一、 SQL 审计
二、设置白名单
三、设置 SSL 加密
四、设置透明数据加密
一、 SQL 审计
本章讲解云数据库安全设置,首先讲的是 SQL 审计,进入我们的管理控制台,进入数据安全性,进入 SQL 审计页面。
点击开启 SQL 审计,因为会涉及 SQL 的采集,所以会产生的费用,大家可以先看计费文档。开启 SQL 审计之后,刚开始没有相关记录的,需要等待一段,操作以后才会有记录。
二、设置白名单
后面再看设置白名单,白名单设置有内网的127本机,然后有非常危险的0.0.0.0,允许所有地址访问是非常危险的事情,这次要演示在外网访问 RDS ,所以我现在添加这个非常危险的 IP ,之后一定要删掉。
三、设置 SSL 加密
介绍设置 SSL 加密。因为 SSL 加密的时间可能会要个五六分钟,所以的话就提前弄好了, SSL 加密主要是应用在外网访问的,另外内网的话,因为本身在内网之间比较安全,如果设置 BPC 就会更加安全,而且绝大多数的程序也都是不支持通过连接 SLL 加密的数据库,所以 SSL 加密还是外网这种程序来连接我们的 RDS 或者其他外网 MySQL 实例。外网的链接地址,主要证书是颁布给外网的。
然后下载证书,解压之后的文件有三个文件,虽然都是不一样的,它们全都是证书的,接下来进行连接,重新复制一下外网地址,然后看到里有 SQL 的连接方式。
这就成功了,就看到里面有数据库。可以访问数据库。
再看 SQL 审计,看到这第三个操作全都被 SQL 审计记录下来了,操作数据库就会有产生一定的 SQL 审计, SQL 通过网络协议分析所得,会有可能出现这些丢失的情况。
四、设置透明数据加密
介绍 TDE 加密, TDE 可对数据文件执行实时I/o加密和解密,数据再写入磁盘之前会进行加密,从磁盘读入内存时会进行解密。 TED 不会数据文件的大小。
开启 TDE 就可以直接使用了,不需要增加, TDE 加密和 SSL 加密就会有一个过程,就是涉及加密解密的话程度会更加的消耗 CPU 资源,相对反应相对较慢。 TDE 主要应用,就是数据库备份可能会比较好地应用,比如说数据库通过加密之后的文件,如果进行传输,没有这里的密钥的话,就是不可能解开的,只有数据库备份文件传输当中的话,可能会有比较好的应用。这里可以看得到 TED 状态:开启 TED 之后,用户还需要对 MySQL 的表进行 DDL 操作才能进行数据加密或者解密。
//XXX 就是表明名字。引擎的话必须使用 innodb ,后面就是加密的语句。
重复强调0.0.0.0是非常危险的一个设置,它虽然说 RDS 是由阿里云提供的安全服务,但是如果平时没有比较严格安全措施的话,万一一下子又爆出一个严重的漏洞的话,那么可能后果会比较严重。如果能专门针对 MySQL 的话,设置0.0.0.0,就可能会导致我们的数据泄露, TED 开通之后,再进入 DMS 进行 MySQL 的命令操作。只要 alter table engine 就可以了,就可以完成加密解密操作。