|
云数据库加密及实践建议当使用云数据库,特别是用到了数据库的SaaS解决方案时,数据库的正常功能将会降低,迫使数据库或云应用能访问密钥,除非能在密文上操作。 云数据库加密 第一件事需要考虑加密数据的必要性。所有的数据库都具有限制访问的功能。某些合适的实现已经足以保护数据机密性。 其他需要通过加密来保护存储在数据库中的数据的因素有:对数据库的特权用户(如数据库管理员)隐藏数据;为了遵守法律法规,数据拥有者不能通过帐户来控制对数据的访问(如使用共享账户)。 当使用云数据库,特别是用到了数据库的SaaS解决方案时,数据库的正常功能将会降低,迫使数据库或云应用能访问密钥,除非能在密文上操作。 数据加密会带来复杂度和性能上的成本。除了加密之外,还有一些别的有效方法: 使用对象安全。使用SQL准许及废除声明去约束账户访问这些数据。这些账户中哪些准许访问的必须严格控制,以确保只有授权的用户才能访问。 存储安全哈希值。存储这些数据的哈希值而不是直接存储这些数据,这能允许企业的程序能证明持有者有正确的值而不必实际存储它。 密钥管理 在公有云计算中一个很困难的过程就是密钥管理,公有云中的多租户模型造成其上运行的过程需要考虑密钥管理问题。 最简单的应用案例是在公有云中有应用程序运行,加密数据的从企业内部流到公有云中,密钥仅供企业内部使用。有的加密引擎能够在数据流出时加密,在数据流入时解密。当公有云上的其他处理过程(例如批处理)需要访问密钥去解密数据时,一个使用密钥的应用程序将变得复杂。 企业中使用者需要拥有他们自己的密钥,而不是一个能用于访问整个企业的单独的共享密钥。最简单的解决方法是采用一个加密引擎,基于实体身份信息为每一个用户或实体分配(或管理)一个密钥。以这种方式,为一个实体特别加密的任何信息将为那一实体所维护。如果一个群体内的实体需要共享数据,那么可以为管理群体访问的应用程序分配一个群体级别密钥,并在群体内的实体间共享密钥。密钥在企业内部应该像这一部分前面讨论的那样进行管理。 当数据存储在公有云环境中,在停用这一环境时,证明所有数据(尤其是PII或SPI数据或隶属于法律法规的数据)已经从公有云环境中删去,包括其他媒体如复制盘等,将存在着问题;维护当地密钥管理能够从密钥管理系统中废除(或删除或丢失)密钥,以确保任何数据残留在公有云的数据不能被解密,来提供这一保证。 如果云服务提供商和用户没有一个有效的密钥管理过程,加密数据就没有多大价值。 在服务提供方,需要关注的因素包括:服务器拥有加密的数据,同时访问密钥服务器缺少职责划分;数据库管理员能访问个人密钥;或数据库服务架构依赖于单一密钥。 使用密钥加密密钥,在内存中产生加密密钥,以及只存储密钥服务器的加密密钥,都是能控制和保护密钥本身的有效的架构解决方案。构建任何解决方案时都应该考虑这些。 客户端密钥管理,在本身并不安全的设备(如移动终端)上保护密钥,或者这一设备没有得到同等级别的控制,都是需要考虑的因素。 实践中的具体建议 在企业应用的具体实践中,可以遵循如下一些有益的建议: 责编:王雅京 微信扫一扫实时了解行业动态 微信扫一扫分享本文给好友 著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。 |
最新专题 推荐圈子 |
|