首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >给数据科学家的十条数据安全建议

给数据科学家的十条数据安全建议

作者头像
未来守护者
发布2018-07-23 11:59:13
9560
发布2018-07-23 11:59:13
举报
文章被收录于专栏:安全领域安全领域

发生事故的地方

又一天,又一次泄露。这次的 Equifax 信用数据外泄,仅仅是一系列被曝光的严重组织数据泄露事件中,最新的一件。它发生在 Target 的客户信用卡数据库中,发生在 Anthem 的健康保险记录中,甚至发生在联邦人事管理办公室的背景检查表中。更糟糕的是,这些只是极少数最严重的例子 —— 关键服务器和数据库每天都会受到侵害。随着时间的推移,这些问题会出现得越来越频繁,并且可以肯定的是,在它变好之前事态会更加糟糕。

感到焦虑了吗?很好。这就是你应该感受到的。安全性(Security)不再仅仅是数据库管理员和网络工程师的专属领域。在组织安全策略中,每一个涉及到创建、管理、分析,甚至只是访问数据的个人,都是一个潜在的故障点。因此,如果您使用的是完全敏感的数据(即那些您不会自由地向互联网上任意陌生人提供的数据),那么您就有责任确保数据得到适当的保护。

2016年,我明白了数据安全对我的重要性。虽然对 DNC 入侵的黑客只攻击了该组织的电子邮件服务器(除了作为普通的电子邮件用户,我的团队没有与之交互),但不难想象,能够进入这些系统的人同样也可以进入我们的选民与竞选数据库。这种情况无论是否真的发生了,我都不知道(当我能掌握入侵的程度时,我已经离开了那份工作),但这一事件凸显出数据科学家对自己的数据安全进行投资的重要性。简而言之,我们不能天真地认为别人会为我们保护安全。

对于大多数数据科学家来说,安全性可能是一个不熟悉的领域,因为典型的研究生或训练营的培训计划几乎都不涉及安全性。(他们当然应该这样做,但我认为大多数读者已经超过了这一点。)但是,这并不是忽视数据安全的借口,特别是当该领域的一个小错误可能会掩盖住你想要做的其他一切时。那么,如果您从现在开始想要更好地保护您的数据,您应从何处开始呢?

在开始担心特定于数据科学的安全问题之前,我建议您先进行基本的安全审查,从一些通用的,用于在线控制您的账户与资产的最佳实践开始。以下是一些具体的建议:

  • 使用(但不要重复使用!)复杂密码,并在一个密码管理器(如 LastPass Dashlane)中记录它们。
  • 尽可能激活双因子身份验证(Two-factor authentication),最好使用身份验证器应用(Authenticator app)或物理令牌(Physical token)等物理组件,这些组件比文本消息更难以受到危害。
  • 不要乱用粗略的 wifi / 计算机 / 闪存驱动器 / 软件,并始终加密任何可能丢失的便携式设备(闪存驱动器,移动硬盘,手机,平板电脑,笔记本电脑等)。
  • 在公共 wifi 网络上,始终通过 V**(不是免费,而是付费的,并确保对做好调查)进行连接。
  • 定期更新您的计算机和手机,并使用 防病毒 / 反恶意软件 / 防火墙软件(但请注意,这些工具的价值越来越受到质疑)。
  • 请勿将您的帐户凭据存储在文本文件中,或将其嵌入到脚本中。
  • 并确保您可以保持对计算机,平板电脑和手机的物理安全性的控制,若您遗失了您的手机,上面这些所有步骤都会被浪费。

对于每一个拥有电子邮件的人来说,这些都是很好的建议,但如果您以数据为生,那么这只是一个开始。因此,为了帮助您迈向下一步,成为一位具有安全知识的数据科学家,下面我会给数据科学家们提出一些建议,这是我在整个职业生涯中所学到的十件事:

  1. 只拿取你需要的东西。老间谍的口头禅 —— 仅仅在 “需要知道(need to know basis)” 的基础上进行共享 —— 这也是数据安全的第一原则。您不会失去那些一开始就没有的数据,因此,除非您有明确的需求证明风险合理,否则就不要收集敏感数据。即使如此,也仅需获取完成任务所需的绝对最小值。尽管对数据科学家来说,收集更多数据以为未来的需求而准备,这是挺诱人的,但这种囤积可能意味着轻微的网络安全事件和重大灾难之间的区别,所以请不要这样做。
  2. 了解您所拥有的数据,丢弃您不再需要的数据。想必您已经拥有了一些数据,因此您也应该将上述#1中的相同原则应用于现有数据。定期清点您手头上的数据,分析每个数据集的敏感度,清除不需要的数据,并考虑采取一定措施降低您存储的数据中固有的风险 —— 例如,通过删除或编辑非结构化文本字段,可以隐藏潜在的敏感数据,比如姓名和电话号码。当你考虑数据敏感性时,不要只考虑到自己:如果你拥有其他人的数据,一定也要设身处地地为他人着想。
  3. 无论何时何地,尽你所能加密数据。对数据(不管是 “动态的” 还是 “静态的”)加密,这不是我们想要的灵丹妙药,但它通常是增加额外保护层的一种低成本方法,以防硬盘驱动器或网络连接受到损害。除非您要开发性能需求极高的应用程序,否则实际上加密对性能的影响并不是一个大问题。因此如果您有敏感数据,则应默认进行加密。而且性能并不是加密的关键因素 —— 有大量高性能应用程序和服务带有内置的加密功能(举个例子,这是 Microsoft Azure SQL 数据库中的标准功能),所以随着时间的推移,这个借口越来越没有说服力。(另请注意,一些早期的读者认为我在此处过于宽容 —— 在他们看来,此过程中没有任何借口可以在流程的任一步不对敏感数据加密。
  4. 使用安全共享服务而非电子邮件、Web 服务器,或基本的 FTP 服务器。简单快捷的文件共享方法适合上交作业,或发送可爱的狗狗图片,但它们是与共享敏感数据文件的危险方法。与此相反,请使用专门为安全共享文件而设计的服务。对于某些人来说,这可能是 AWS 上的访问控制 S3 存储桶(您可以在其中管理与其他 AWS 用户共享的加密文件)或 SFTP 服务器(通过加密连接实现安全文件传输)。但即使只是转向使用 Dropbox 或 Google Drive 等服务也是一种改进。虽然它们并不像其他工具那样专注于安全性,但它们仍然提供了更好的基本安全性(例如 Dropbox 和 Google 加密静态文件),并且允许比通过电子邮件发送文件更精细的访问控制,或者将它们转储(Dumping)到最低限度安全(Minimally-secured)的服务器上。对于那些希望从 Dropbox 或 Google 升级的人来说,诸如 SpiderOak One 这样的服务可以为文件存储和共享提供端到端加密,同时能保持易于使用的界面,并且价格亲民(100GB 为 5 美元/小时,1TB 为 12 美元/月)。
  5. 如果您使用 AWS 或 Azure 等云服务,请务必将其锁定(Lock them down)。不要错误地以为,因为是其他人运行着服务器,您就不必担心安全性。恰恰相反,实际上 —— 您需要了解一系列保护这些系统的最佳实践。(我还建议阅读其中一些服务的用户给出的建议,例如这个。)这些功能包括,确保为 S3 存储同和其他文件存储打开身份验证,保护服务器上的端口,以便只访问您需要的端口,以及将对服务的访问限制为仅允许的 IP 地址(或通过 V** 隧道)。
  6. 认真地共享。对于敏感数据,单独授予对用户(内部和外部)和数据集的访问权限,而不是批量授予访问权限,并且仅仅在有实际需要时才提供访问权限(请考虑上面的#1,不过是针对别人来说)。同样,只为特定用例和时间范围提供访问权限(请考虑上面的#2)。让您的协作者签署保密协议和数据使用协议(即使协议中没有强制执行的惩罚,但对于 “其他人要如何处理这些您许可访问的数据” 这个问题,它们会作出预期),并定期检查日志以确保他们没有偏离预期的用途。
  7. 不仅要保护数据存储,还要保护应用程序,备份副本,分析服务器等。从根本上来说,您应该保护任何能够触及您的数据的事物。举个反例,您创建了 Fort Knox 数据库,但如果仪表板服务器(Dashboard Server)将所有数据缓存到不受保护的磁盘,如此一来所有工作都是无用的。同样,请记住,您的系统备份通常也会复制您的数据文件,所以即使您自己删除了文件(毕竟这是备份副本的要点之一),这些数据也可能会继续存在。因此,这些备份不仅应该自我保护,还应该在不再需要时进行清除。否则,它们可能会成为黑客的宝藏 —— 当你所拥有的一切仍然在备份驱动器上时,为什么还要费心仔细呵护你的数据库呢?
  8. 确保原始数据不会隐藏在您可能会共享的输出中。一些机器学习模型将数据(例如来自原始文档的单词和短语)打包为训练模型对象的一部分,因此对模型进行共享的结果,可能会是意外地泄露训练数据。同样地,仪表板、图形,或者地图都可能将原始数据嵌入到最终输出中,而您在表面上看到的只是聚合后的结果。即使您只是共享一张图表的静态图像,也有一些工具可以重建原始数据集,因此不要仅仅因为您没有共享表格而以为您没有泄露原始数据。要了解你所共享的事物,并思考一个有不良意图的人可以用它来做什么。
  9. 了解 “去识别化(De-identified)” 或 “匿名(Anonymized)” 的数据的隐私含义(并确保您已正确地完成)。如果您不需要在数据集中保留个人身份信息(PII,Personally-identifiable information),则删除这些字段是减少违规带来的潜在影响的显而易见的方法,并且这是在您公开共享数据之前必须采取的步骤。但即使您从数据集中删除了 PII,也无法保证其他人无法确定谁是谁。如果与一些其他数据相结合,是否就可以重新识别数据?非 PII 特征是否足够独特,仅适用于特定人群?你相信那些愚蠢地告诉你哈希是一个好主意的人吗?我曾经收到一个 “匿名” 的消费者数据文件,我花了不到 2 分钟找到了自己的记录。(在我的人口普查区,我是唯一一个拥有年龄、种族、性别,以及居住时间的独特组合的人。)我同样也可以轻而易举地找到许多其他人的记录,并在选民登记文件(在大多数地方是公共记录)的帮助下将大多数记录与个人的姓名、地址,以及出生日期相匹配,这是切实可行的。去识别化没有完美的标准,但如果您打算依靠它来保护隐私,我强烈建议您遵循美国卫生及公共服务部的标准,以对受保护健康信息进行去识别化。它不是隐私保护的绝对保证,但这是你所能找到的,最接近于让你的数据有用的东西。
  10. 明白最糟糕的情况。即便采取了所有这些预防措施,您也无法完全消除风险,因此请考虑一下当您的数据出现最糟糕的潜在结果的情况。考虑好后,回头看看#1和#2。无论你如何努力阻止违规,没有任何解决方案是万无一失的,所以如果你不能容忍潜在的风险,你就不应该把敏感数据放在首位。

需要明确的是,这些步骤并不能保护您免受所有危险。如果有国家做后台的黑客组织试图找到一种方法,那么你可能就遇上劲敌了。(这就是为什么我把建议#1放在最前头 —— 没有任何值得黑客攻击的东西是唯一有保障的防御!)但对于 99.9% 的数据科学家而言,他们的数据主要是对于那些实力不是很强的黑客具有吸引力,这些建议应该涵盖了您需要了解的大部分主题。但这并不意味着完事了 —— 要弄清楚如何做好所有这些事情,需要更长的时间 —— 但至少你正在成为你(和我们)的数据的一个负责任的守护者。

希望这篇文章有助于您更好地保护数据,并成为更好的数据科学家。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档