备份数据测试有必要吗? | A.12.3.1信息备份

来源:互联网 发布:程序员级别划分 编辑:程序博客网 时间:2024/05/29 09:10

GB/T 22080—2016/ISO/IEC 27001:2013

A.12.3.1

信息备份

控制

应按照既定的备份策略,对信息、软件和系统镜像进行备份,并定期测试。


信息安全事件:

WHO -Gitlab.com

WHEN-2017年1月31日

HOW -误删导致主数据库数据丢失,备份失效。(原文:https://about.gitlab.com/2017/02/01/gitlab-dot-com-database-incident/ & 中文翻译:http://blog.jobbole.com/110171/)

WHY -数据库备份工具pg_dump的版本与数据库版本不一致导致备份未成功,且因邮件配置问题导致报错邮件未收到。



RISK SCENARIO 风险场景

事前:

老板:公司数据至关重要,备份文件是最后一道防线。我很忙,只看经营数据!

CTO:公司数据至关重要,运维经理一定要做好备份。老板,运维经理说系统稳定!

运维经理:我们使用国际同业主流的全自动系统备份方案,出错会有报警,很先进可靠。并且从未报过错,看起来一切OK,并且某某某应该会检查吧。感觉周报表里少了点啥?

运维工程师甲乙丙:我们很忙,某某某不是我。正常变更都处理不完呢,备份不是自动的嘛,就自动干吧!

实际:没人去验证备份数据是否有效。备份数据是否能用靠信仰!


事中:

工程师:每24小时使用pg_dum进行一次备份,配备上传到Amazon S3。旧的备份则在某时自动删除。符合SLA要求,一切OK!

实际:备份过程中使用的pg_dump是9.2版本,数据库是PostgreSQL 9.6版本。版本号的微小差异造成了pg_dump备份过程中产生错误,从而终止了备份过程。备份从未成功!


事后:

工程师:备份系统配置了报错邮件通知。没邮件,没烦恼!

实际:当备份失败后,cronjob将发送错误通知邮件到工程师邮箱。因GitLab.com邮箱系统使用DMARC协议,而cronjob使用的邮件系统未配置DMARC,导致报错邮件通知被拒收。DMARC协议把报警邮件当垃圾邮件了!







原创粉丝点击