MySQL加密的最佳实践?

时间:2010-08-02 18:12:37

标签: mysql security database-design encryption refactoring-databases

我正在寻找关于加密MySQL的字段(和/或表,如果可能)的指导。我会讨论一个体面的教程,但我真的很喜欢管理从未加密的模式到使用加密字段的过渡的具体技巧。谢谢!

5 个答案:

答案 0 :(得分:8)

除了字段的AES_ENCRYPT之外,如果要存储敏感信息,也可以通过网络更好地enable SSL。还要考虑敏感数据库计算机的网络分离(vlan)和其他标准安全实践。密钥存储很重要(共享的密钥在哪里停留,肯定不在网络服务器上!)并考虑对索引/查询的影响,因为搜索或连接表数据不会像以前那么简单。

答案 1 :(得分:3)

实际上有(至少)两种方法。您可以加密存储在表中的数据(使用EAS / DES函数,例如http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html

或者您可以使用加密的硬盘分区来存储数据文件夹(例如使用TrueCrypt)

答案 2 :(得分:3)

在字段级加密数据库有什么价值?这是您真正想要的,还是足以在OS或SAN级别进行加密?您是打算翻转密钥,还是只保留相同的加密密钥以获得永恒?加密会破坏表索引,引用或字段类型吗?您将如何跨数据库群集共享加密密钥?

我只是提出这些要点,因为数据库加密通常是管理层想要的,但没有人真正可以解释增值或如何实施......

答案 3 :(得分:1)

想想你尝试用加密实现的目标?不幸的是,没有简单的安全解决方案。

请记住,您可以从代码中获取用于加密的密钥。因此,从黑客的角度来看,绕过加密非常容易。你需要考虑你的架构和基础设施。

答案 4 :(得分:0)

首先,只有数据加密不是答案。

您应该了解并控制“#34;谁可以访问和访问数据"。

虽然您自己加密数据,但攻击者可以获取加密数据。要防止它,您应该控制访问权限或权限。此外,您应该知道谁访问了加密数据。因为在这些日子里,数据不仅可以被外部用户窃取,还可以被内部用户窃取。

您应该加密数据,控制权限和审核访问者。

在那些日子里,这三种技术都是以各种方式发展起来的。大多数公司都购买了每种解决方案。

但对于个人用户来说,很难购买它并自己构建这些环境。 此外,MySQL的加密功能并不能提供这些功能。

我想查看提供这三(3)个功能的 link

根据我的经验,它可以提供一定的安全性。(我是中小企业的首席信息安全官。)