保护MySQL数据库中敏感信息的步骤

时间:2011-02-20 23:27:28

标签: security encryption mysql

我认为自己是一个相当优秀的程序员,但我对服务器管理知之甚少。我很抱歉,如果这些问题是愚蠢的,但我真的很感激我可以采取的一些建议或步骤,以使其更加安全。

我已经完成了一个客户项目,涉及存储一些非常敏感的信息,即大捐赠者的个人详细信息。从编程的角度来看,它使用用户身份验证进行保护。

我不介意花一些钱,如果这意味着信息会更安全,我还应采取其他措施?

  1. 数据库是否可以加密,即使服务器遭到入侵,人们也不能只是转储mysqldb而拥有一切?

  2. 是否值得购买ssl证书?

  3. 该网站目前托管在个人托管计划上,并拥有一个相当值得信赖的主机。虚拟专用服务器会更安全吗?是否有我可以使用的特殊主机采取额外步骤来保护信息(即在亚马逊s3上它会更安全吗?)

1 个答案:

答案 0 :(得分:1)

作为特定问题的旁注,我建议阅读一些有关计算机/编程安全性的书籍。一些好的是 19软件安全的致命罪编写固体代码


  1. 您不需要加密数据库本身,只需在存储之前加密数据。 (确保使用真实的,加密安全的算法,而不是自己制作一个算法。)

  2. 如果您想避免MITM攻击或窥探,使用SSL绝对是一个重要的步骤。证书允许您使用SSL而无需采取额外的步骤,例如在每个客户端系统上安装自签名的服务(更不用说其他好处,例如撤销受损的证书等)。

  3. 这取决于信息的敏感程度以及泄漏的严重程度。您可能想要阅读一些主机评论,以了解主机有多好。 (如果可能,按评级对评论进行排序,并查看差评,以查看它们是否适用于您和/或与安全性有关的客观问题,或者它们是否只是该审阅者的偶然或特定问题。至于“云”,你可能会有机会,因为现实世界的安全性和隐私尚未确定。显然,如果你坚持下去,你就会想要一个像亚马逊或微软这样值得信赖的值得信赖的主机,因为他们有像问责制这样的好处,并且能够不断快速地解决任何问题。

  4. HTH