云数据库加密

云数据库加密

一件事需要考虑加密数据的必要性。所有的数据库都具有限制访问的功能。某些合适的实现已经足以保护数据机密性。

其他需要通过加密来保护存储在数据库中的数据的因素有:对数据库的特权用户(如数据库管理员)隐藏数据;为了遵守法律法规,数据拥有者不能通过帐户来控制对数据的访问(如使用共享账户)。

当使用云数据库,特别是用到了数据库的SaaS解决方案时,数据库的正常功能将会降低,迫使数据库或云应用能访问密钥,除非能在密文上操作。

数据加密会带来复杂度和性能上的成本。除了加密之外,还有一些别的有效方法:

使用对象安全。使用SQL准许及废除声明去约束账户访问这些数据。这些账户中哪些准许访问的必须严格控制,以确保只有授权的用户才能访问。

存储安全哈希值。存储这些数据的哈希值而不是直接存储这些数据,这能允许企业的程序能证明持有者有正确的值而不必实际存储它。

云数据库加密实践建议

使用标准算法。不要使用专用的不规范的技术,专用加密算法没有被证明且容易被攻破;

避免使用旧的不安全的加密标准如数据加密标准(DES);

使用对象安全。即使在加密的情况下,也应该坚持使用基本对象安全(SQL准许及废除声明)去阻止对数据的访问;

不要加密主键或者索引列。如果加密主键,将必须加密所有的参考外部键。如果企业加密索引列,当企业曾是使用加密数值时,查询数据将会很慢;

使用柱状的方法去加密(因为大数据系统使用这种方式)。