《Web安全开发指南》试读:1.5  处理云存储

在一个员工要求随时随地能用身边的任何一种设备访问数据的世界里,云存储是一个必然的灾难。用户有各种各样的云存储解决方案可以选择,但现在最热门的是Dropbox(https://www. dropbox.com/),到2014 年年底它已拥有3 亿多用户。Dropbox(以及很多其他的云存储提供商)有着盛衰无常的安全历史。例如,2011 年,Dropbox 出现了一个bug,任何人都能用任何密码访问任何账户,这一事故持续了4 个小时[ 参见InformationWeek 的文章(http://www. darkreading.com/vulnerabilities-and-threats/dropbox-files-left-unprotected-open-to-all/d/d-id/1098442)]。当然,所有供应商都会告诉你你的应用数据现在是安全的,他们已经提高了安全性。如果你认为这没什么关系,那么黑客还将会在云存储服务里找到漏洞,或者服务本身会再次出错。 大部分云存储的主要问题在于其天生是公开的。例如,商业版的Dropbox 听起来非常好,并且确实提供了更多的安全特性,但该服务仍然是公开的。公司不能在自己的私有云上使用该服务。 此外,大多数云服务宣称它们会在自己的服务里加密数据,这似乎是真的。但是,这些服务提供商通常以必须用相关的凭据进行验证后才能访问你的数据为借口,持有着加密密钥。因为你不拥有自己的加密数据的密钥,所以就不能控制对数据的访问,并且加密的作用也会比你想象的小得多。 Web 应用程序的安全是一件大事,因为大部分应用(即使不是全部)始终要有Web 应用程序的基础。用户想要他们的应用程序无处不在,而浏览器几乎是唯一能以高效的方式在众多平台上提供这种功能的方式。简言之,你必须从一开始就考虑云存储的问题。对于如何将云存储作为Web 应用程序策略的一部分,有下面几个方案可供选择。 阻止访问 通过使用防火墙,指定策略或应用程序的特性,确实可能阻止所有对云存储的访问。但是,想要阻止无处不在的想要访问云存储的用户去访问是很难的,并且,用户访问的意愿是相当坚决的。此外,阻止访问会对业务需求产生负面作用。例如,合作伙伴可能会选择云存储来作为交换大文件的方法。阻止策略还会招致用户的愤怒,进而使他们不再使用你的应用程序,或者想办法规避你提供的这个特性。当你的公司必须管理大量敏感数据,有保护数据的法律要求,或者根本不需要用到云存储的灵活性时,阻止访问是最好的选择。 允许不受控的访问 你可以选择无视云存储使用过程中涉及的相关问题。但是,这样的策略会让公司面临数据丢失、数据泄露以及各种各样的其他问题。不幸的是,许多公司目前正是使用这样的方法,因为控制用户的访问已经变得非常困难,且这些公司缺乏采用其他方法的手段。 依赖公司授权的安全场景 如果要求用户用公司账户访问云存储,你至少能监控文件的使用并能在职员离职时恢复数据。但是,云存储的基本问题仍然存在。有相关知识的黑客仍然能侵入账户并窃走数据,或者只是以其他方式来窥探你。在你的公司不需要管理法律要求保护的数据,而你也愿意用一些安全性换取方便的时候,这一方案是可行的。 控制应用程序的访问 许多云服务支持以特别的方式与服务进行交互的API。虽然这一方法非常耗时,但它确实能让你控制将用户敏感数据保存在哪里,同时用户仍然能够灵活地使用云存储处理不敏感的数据。在公司需要与大量合作伙伴进行交互,还需要管理大量敏感和核心数据时,你应该考虑这一方案。 依赖第三方的解决方案 你能找到一些第三方解决方案,比如Accellion(http://www.accellion.com/),它提供了云存储的连接器。这种供应商提供的服务可以作为应用程序与在线数据存储之间的中介。用户可以无缝地与数据进行交互,但连接服务会根据你设置的策略来控制访问。这种方法的问题在于,在开发应用程序时你有额外的一层需要考虑。此外,你必须信任提供连接服务的第三方。在需要拥有灵活性而又不消耗一般的开发成本,并且不想创建依赖于API 访问的解决方案时,你可以使用这种解决方案。

>Web安全开发指南

Web安全开发指南
作者: [美] John Paul Mueller
isbn: 7115454086
书名: Web安全开发指南
页数: 268
译者: 温正东
定价: 69.00元
出版社: 人民邮电出版社
装帧: 平装
出版年: 2017-6