开发者社区> MySQL技术> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

MySQL安全加固方法分享

简介: 数据库作为数据存储的载体,在程序开发中承担着至关重要的作用。近些年,随着各种安全事故的发生,数据安全性逐渐得到重视。等保评测或各类系统安全评测中也都有增加数据库安全相关要求,本篇文章将以 MySQL 为例,分享几点数据库安全加固方法。
+关注继续查看

1.数据安全重要性


数据安全性是指保护数据免受未经许可而故意或偶然的传送、泄露、破坏、修改,是标志程序和数据等信息的安全程度的重要指标。即保护数据不被破坏或泄露,不准非法修改,防止不合法的访问。


从理论上看,数据安全是信息系统建设的基石,数据是信息系统保护的首要目标。数据失去保护,信息系统也就失去了应有的意义。数据因为其价值的巨大和变现的便捷性,已成为黑客直接攻击的首要目标。近期,也发生过很多数据库系统中勒索病毒或被挖矿的案例。


数据安全有三个特性,分别是保密性、完整性、可用性:


  • 保密性:指对数据进行加密,只有授权者方可使用,并保证数据在流通环节不被窃取。包括网络传输保密和数据存储保密。
  • 完整性:指数据未经授权不得进行修改,确保数据在存储和传输过程中不被篡改、破坏、盗用、丢失。
  • 可用性:指经授权的合法用户必须得到系统和网络提供的正常服务。不可因为保护数据泄露而拒合法使用者于千里之外。


国家对于数据安全也很重视,2021 年 6 月 10 日,第十三届全国人民代表大会常务委员会第二十九次会议通过《中华人民共和国数据安全法》,自 2021 年 9 月 1 日起施行。自此之后,数据安全问题也做到了有法可依。


2.安全加固方法


那么我们应该怎么来做数据库安全加固呢?从数据安全的三个特性出发,或许可以找到新的思路,即要保证数据的保密性、完整性、可用性。一切对这三个特性有利的方法都可作为安全加固的方法。


笔者认为,安全是多个环节层层防护、共同配合的结果。数据安全加固并不只是数据库单一层面的问题,还需考虑操作系统、底层存储、程序端等多个层面。下面笔者将从这几个层面来分享几点数据库安全加固的方法,当然,笔者并不是安全相关专业人事,几点建议仅供参考。


操作系统层面(主机层):


  • 做好系统用户身份鉴别,不使用弱密码并定期更换。
  • 启用登录失败处理功能,限制 ip 重复登录。
  • 做好访问控制,制定安全策略,控制用户对资源的访问。
  • 配置防火墙策略,做好安全审计并保留审计日志记录。


存储层:


  • 有存储冗余策略。
  • 选择合适的磁盘阵列技术。
  • 定期检查存储,避免磁盘坏道。


数据库层:


  • 以独立的系统用户运行 mysql 服务。
  • 及时发现新的安全风险,打补丁或升级版本。
  • 配置数据库账号密码策略,不使用弱密码。
  • 数据库账号权限尽可能小,做好权限分离。
  • 禁止数据库外网访问,限制数据库账号 ip 登录。
  • 竭力完善数据库高可用架构,最好能做到多活。
  • 有完整的周期性备份策略,备份文件可在异地保留一份。
  • 增加数据库审计,对数据库流量或日志审计,设定告警通知机制。


程序层:


  • 敏感数据进行加密存储和传输。
  • 做好代码安全检测,防止恶意传参及 SQL 注入。
  • 应用系统不使用常见的管理员账号及密码。


总结:


人类已进入大数据时代,数据的重要性无需赘言,特别是金融、政府、医疗等系统。本篇文章从几个层面出发,分享了几点数据库安全加固建议,希望大家能够对数据安全性有些基本的认识,数据安全要重视起来了。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Docker中MySQL的安装与实践
MySQL 是世界上最受欢迎的开源数据库。凭借其可靠性、易用性和性能,MySQL 已成为 Web 应用程序的数据库优先选择。我们在写 Demo 项目或者学习的时候,都经常会使用到 MysQL 数据库或集群,使用 Docker 能方便随时随地的搭建数据库环境。
161 0
《MySQL DBA修炼之道》——2.3 其他MySQL分支的安装
本节书摘来自华章出版社《MySQL DBA修炼之道》一书中的第2章,第2.3节,作者:陈晓勇,更多章节内容可以访问云栖社区“华章计算机”公众号查看。 2.3 其他MySQL分支的安装 一些其他MySQL的分支,提供了更高的性能和更多的特性,如Percona Server、MariaDB等,它们的二进制版本安装类似于官方版本,读者可参考对应分支的安装文档进行部署安装。
1250 0
Mysql 5.6版本二进制安装
时间:2018.7.30作者:李强参考:man,info,magedu讲义,万能的internet实验环境:VMware® Workstation 12 Pro ,Centos 6.9,Centos 7.4,SecureCRT Version 8.1.4声明:以下英文纯属个人翻译,英文B级,欢迎纠正,以下内容纯属个人理解,并没有对错,只是参考,盗版不纠,才能有限,希望不误人子弟为好。
1023 0
MySQL压测--TPCC安装,测试
今天我们来讲一下MySQL的压力测试工具,目前我接触到的主要有两种压力测试工具:TPCC,Sysbench,前者只适合MySQL数据库OLTP压力测试,而Sysbench功能就比较广泛,可以测试OS的CPU,Memory,IO,以及多种关系型数据库,如MySQL,PostgreSQL; 这篇博客主要讲解Tpcc 安装,测试。
976 0
yum 安装 MySQL
1 查看Linux发行版本 [root@typecodes ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 2 下载MySQL官方的Yum Repository 根据Linux发行版本(CentOS、Fedora都属于红帽系),从mysql官方(http://dev.mysql.com/downloads/repo/yum/)获取Yum Repository。
1043 0
+关注
MySQL技术
一起学习数据库
183
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载