云数据库安全设置|学习笔记

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 快速学习云数据库安全设置

开发者学堂课程【云数据库 MYSQL 快速入门:云数据库安全设置】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/13/detail/37


云数据库安全设置

内容介绍:

一、 SQL 审计

二、设置白名单

三、设置 SSL 加密

四、设置透明数据加密

 

一、 SQL 审计

本章讲解云数据库安全设置,首先讲的是 SQL 审计,进入我们的管理控制台,进入数据安全性,进入 SQL 审计页面。

点击开启 SQL 审计,因为会涉及 SQL 的采集,所以会产生的费用,大家可以先看计费文档。开启 SQL 审计之后,刚开始没有相关记录的,需要等待一段,操作以后才会有记录。

13-9-1.png

 

二、设置白名单

后面再看设置白名单,白名单设置有内网的127本机,然后有非常危险的0.0.0.0,允许所有地址访问是非常危险的事情,这次要演示在外网访问 RDS ,所以我现在添加这个非常危险的 IP ,之后一定要删掉。

 

三、设置 SSL 加密

介绍设置 SSL 加密。因为 SSL 加密的时间可能会要个五六分钟,所以的话就提前弄好了, SSL 加密主要是应用在外网访问的,另外内网的话,因为本身在内网之间比较安全,如果设置 BPC 就会更加安全,而且绝大多数的程序也都是不支持通过连接 SLL 加密的数据库,所以 SSL 加密还是外网这种程序来连接我们的 RDS 或者其他外网 MySQL 实例。外网的链接地址,主要证书是颁布给外网的。

然后下载证书,解压之后的文件有三个文件,虽然都是不一样的,它们全都是证书的,接下来进行连接,重新复制一下外网地址,然后看到里有 SQL 的连接方式。

13-9-2.png

这就成功了,就看到里面有数据库。可以访问数据库。

再看 SQL 审计,看到这第三个操作全都被 SQL 审计记录下来了,操作数据库就会有产生一定的 SQL 审计, SQL 通过网络协议分析所得,会有可能出现这些丢失的情况。

 

四、设置透明数据加密

介绍 TDE 加密, TDE 可对数据文件执行实时I/o加密和解密,数据再写入磁盘之前会进行加密,从磁盘读入内存时会进行解密。 TED 不会数据文件的大小。

开启 TDE 就可以直接使用了,不需要增加, TDE 加密和 SSL 加密就会有一个过程,就是涉及加密解密的话程度会更加的消耗 CPU 资源,相对反应相对较慢。 TDE 主要应用,就是数据库备份可能会比较好地应用,比如说数据库通过加密之后的文件,如果进行传输,没有这里的密钥的话,就是不可能解开的,只有数据库备份文件传输当中的话,可能会有比较好的应用。这里可以看得到 TED 状态:开启 TED 之后,用户还需要对 MySQL 的表进行 DDL 操作才能进行数据加密或者解密。

13-9-3.png

//XXX 就是表明名字。引擎的话必须使用 innodb ,后面就是加密的语句。

重复强调0.0.0.0是非常危险的一个设置,它虽然说 RDS 是由阿里云提供的安全服务,但是如果平时没有比较严格安全措施的话,万一一下子又爆出一个严重的漏洞的话,那么可能后果会比较严重。如果能专门针对 MySQL 的话,设置0.0.0.0,就可能会导致我们的数据泄露, TED 开通之后,再进入 DMS 进行 MySQL 的命令操作。只要 alter table engine 就可以了,就可以完成加密解密操作。

相关文章
|
2月前
|
SQL druid Java
线程池相关故障问题之Druid数据库连接池中,为何需要设置TransactionTimeout
线程池相关故障问题之Druid数据库连接池中,为何需要设置TransactionTimeout
|
2天前
|
SQL 关系型数据库 MySQL
MySQL数据库中给表添加字段并设置备注的脚本编写
通过上述步骤,你可以在MySQL数据库中给表成功添加新字段并为其设置备注。这样的操作对于保持数据库结构的清晰和最新非常重要,同时也帮助团队成员理解数据模型的变化和字段的具体含义。在实际操作中,记得调整脚本以适应具体的数据库和表名称,以及字段的详细规范。
16 8
|
1月前
|
SQL druid Java
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
46 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
|
1月前
|
SQL Java 关系型数据库
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
57 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
|
18天前
|
安全 关系型数据库 数据库
FastAPI数据库操作秘籍:如何通过高效且安全的数据库访问策略,使你的Web应用飞速运转并保持数据完整性?
【8月更文挑战第31天】在构建现代Web应用时,数据库操作至关重要。FastAPI不仅简化了API创建,还提供了高效数据库交互的方法。本文探讨如何在FastAPI中实现快速、安全的数据处理。FastAPI支持多种数据库,如SQLite、PostgreSQL和MySQL;选择合适的数据库可显著提升性能。通过安装相应驱动并配置连接参数,结合ORM库(如Tortoise-ORM或SQLAlchemy),可以简化数据库操作。使用索引、批量操作及异步处理等最佳实践可进一步提高效率。同时,确保使用参数化查询防止SQL注入,并从环境变量中读取敏感信息以增强安全性。
36 1
|
28天前
|
关系型数据库 分布式数据库 数据库
安全可靠的国产自研数据库PolarDB V2.0,让数据库开发像“搭积木”一样简单!
安全可靠的国产自研数据库PolarDB V2.0,让数据库开发像“搭积木”一样简单!
|
1月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
29 6
|
1月前
|
存储 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
30 4
|
1月前
|
存储 关系型数据库 MySQL
"Linux环境下MySQL数据库名及表名大小写敏感性设置详解:从配置到影响,确保数据库操作的准确与高效"
【8月更文挑战第9天】在Linux环境中,MySQL数据库名及表名的大小写敏感性是一项重要配置。默认情况下,MySQL在Linux上区分大小写,但这可通过配置文件 `/etc/my.cnf` 中的 `lower_case_table_names` 参数调整。该参数设为0时,名称存储时保持原样,查询时不区分大小写;设为1则全部转换为小写。通过编辑配置文件并重启MySQL服务,可根据需求灵活控制名称的大小写敏感性,确保数据一致性和应用兼容性。
57 3
|
1月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(中)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
23 3