MongoDB数据安全典型实践
概览
对数据库使用者来说,如何保障数据安全是一个非常重要的问题。数据安全包括数据不丢失可恢复、数据库访问受控具有保密性等含义。本篇将为您介绍在百度智能云数据库 DocDB for MongoDB 保障数据安全的具体方法。
需求场景
在使用数据库的过程中,数据安全是用户最为关注的场景,云数据服务需要提供数据不丢失可恢复,并且对数据库的访问有所控制的能力。
方案概述
跨宿主机容灾
云数据库 DocDB for MongoDB 采用三副本架构,三副本包括:
1. 可对外提供读写服务的Primary节点。
2. 可对外提供只读服务Secondary节点。
3. 对用户不可见的Hidden节点。这三个节点位于不同的物理宿主机之上。
当Primary或Secondary所在物理机发生单点故障,系统将自动切换健康节点为新Primary或Secondary节点,继续对外提供服务,保障服务高可用。
网络隔离
云数据库 DocDB for MongoDB 创建在用户的虚拟网络VPC中,默认只允许同一个VPC内的主机进行访问。每个用户的VPC之间的网络是相互隔离的,因此可以避免其他用户及公网用户的非法访问。
访问密码
在创建云数据库 DocDB for MongoDB 实例时,用户需要设置数据库访问密码,访问密码支持在创建后重置。访问密码是数据库合法访问的准入证明,只有提交正确的访问密码才能连接到云数据库 DocDB for MongoDB 实例。
建议您在设置密码时注意:
a.避免使用弱密码:简单的数字组合、账号相同的数字组合、键盘上临近键等。
b.使用长密码:密码位数大于16位将增加数据库访问安全性。
c.定期修改密码;如每隔90天修改1次密码。
d.避免共享密码:使用没有在其他任何地方使用的密码。
多用户访问控制和企业组织管理
-
多用户访问控制
多用户访问控制,主要用于帮助用户管理云账户下资源的访问权限,适用于企业内的不同角色,可以对不同的工作人员赋予使用产品的不同权限。
云数据库 DocDB for MongoDB 支持系统策略和用户自定义策略两种,分别实现云数据库 DocDB for MongoDB 的产品级权限和实例级权限控制。具体操作方法请参考操作指南中的多用户访问控制介绍
-
企业组织
如果您的公司需要多个有组织层级关系的独立账户、上层账户需要控制下层账户的操作权限,请参考企业组织
数据备份与恢复
在云数据库 DocDB for MongoDB 的创、删使用中,为避免误操作威胁数据安全,建议使用工具mongodump对数据库来做备份操作,并使用mongorestore来恢复某一时刻数据库备份状态。这种备份为离线备份,在备份和恢复过程中,数据库将会停止提供读写服务,因此建议您在业务低峰进行操作。
相关产品
多用户访问控制:云上用户权限控制