将sql数据库导出到我的PC是否安全?

时间:2016-06-29 19:29:58

标签: mysql sql security

有人可以像中间人那样拦截它或类似的东西吗? 当您想要将包含所有用户信息的数据库备份到硬盘驱动器上时,该练习是什么?

我应该加密吗?我的phpMyAdmin在SSL下运行,所以我猜连接是加密的。

1 个答案:

答案 0 :(得分:3)

我认为您有兴趣将生产数据库移动到本地PC以进行开发,并且您担心保护最终用户免受窥探。您突出了许多关于如何拦截数据的有效问题,但有些内容您似乎没有意识到:将生产数据库导出到开发人员计算机本身就违反了您的应用程序安全性,即使没有其他人知道它。您的用户希望他们的数据对每个人都是隐藏的,包括您作为(可能是善意的)开发人员!将您的个人数据用于您自己的目的 - 无论您认为您的目的多么光荣 - 都违反了这些期望。除了仅为了从灾难性数据丢失事件(生产中的硬盘驱动器出现故障,拙劣的补丁等等)中创建备份之外,您应该从不发送生产数据的原始转储任何地方。 (当然,当你创建这些备份时,你应该加密它们。)

回到您希望保护最终用户数据的假设,针对恶意实体的最佳选择是对敏感数据实施data masking。您可以在此处使用不会损害实际真实用户身份或意图的数据导出架构的关系内容。基本上,您使用欺骗标识替换名称和电子邮件地址,并且任何其他可能被归类为“机密”的(您需要自己确定)同样会被编辑和/或替换为虚假数据。

数据屏蔽的优势应该立即显现出来。即使(上帝禁止!)某人拦截你的备份并尝试从中推断出有关你的用户的信息,他们最终得到的只是一组虚构的数据,不能用于推断你的实际用户的任何信息。当然,如果他们以某种方式拦截您的转储,他们可以轻松地对您的架构进行逆向工程,这本身就是一个麻烦,但至少他们不会立即访问您的私人详细信息用户群。也就是说,目前有许多相当安全的数据传输方式,例如FTP over SSL(又名FTPS)。 (请注意,FTPS 与SFTP相同!)