返回 登录
0

开发者应构建高可用的数据库防止用户账户泄露

阅读881

此文来自一位国外开发者的个人博客文章,指出很多黑客事件造成了用户账户泄露,大多是因为开发者没有构建一个高可用的用户数据库,并分享了他的一些实战经验,我们进行了摘译。以下为正文:

黑客事件之所以每次都带来很大的影响,大多是因为用户数据存在于一个常规的数据库里,不管是SQL还是NoSQL都是不恰当的。典型的就是放在应用数据库剩余的空间里,如果黑客一旦获得访问机器上的数据库API,那么数据就是待宰的羔羊,可自由下载用户数据。

SELECT * FROM USER_DATA

这会导致数百万的用户数据受到连累。另外一个就是,开发者未对用户数据设置专门的访问账户和密码管理系统,亦或是其他的保障措施,才使得数据易受攻击。

开发者需要有专门针对用户数据的安全保障,或者迁移用书数据,以尽量减少黑客带来的影响。

下面是构建高可用用户数据库的一些经验:

  • 设置专门的访问API来进行限制;
  • 不要提供通用的数据库查询功能;
  • API应有密码;
  • API应禁止掉一些算法(可用于下载海量的用户数据);
  • 分布式;
  • 不可运行在Web服务器上,应该放在后端,且只有通过API才能访问;
  • 对于不常见的请求和恶意访问有警报;
  • 不要有什么其它用途;

做了这些不敢保证杜绝黑客的入侵,但至少可以解决一些常见的问题。

英文原文:Millions of accounts are being compromised because developers don't have a specialised user database

————————————

极客头条正式开通了微信公众号,刊选每日精华内容和最新的资讯文章。在微信搜索“csdn_geek”或扫描下方的二维码。

http://img.my.csdn.net/uploads/201504/14/1428999730_5047.jpg

评论