保护Meteor.js应用程序的最佳做法是什么,假设我们已经处理了CSRF攻击,进行了适当的用户输入验证,删除了auto-publish
和insecure
个包?
答案 0 :(得分:4)
你似乎已经完成了大部分工作。
此外:
check
,发布函数和&你的允许和拒绝规则以确保数据类型及其结构得到执行,因此没有其他任何因素可以造成损害。使用audit-argument-checks
包可以帮助您对此实施严格要求。var
关键字在闭包内声明变量(因为变量可能会在用户之间跳转)。collection.findOne(xx).yy
(因为这可能会导致崩溃并显示信息,您应该先检查文档是否存在)。eval
是不是在任何地方使用(我认为这应该是相当明显) - 自eval
如全球范围的可变填充运行特别是随着流星,甚至从一个项目,可以在任何地方访问(这与仓库引擎系统的工作原理相悖)。services
(在用户集合中)发布到任何客户端,只发布没有设置resume
的子部分。 (这有时通过第三方登录来完成,以向客户端公开更多用户信息,但它可能会显示太多)。不确定是否有其他人,主要的是删除insecure
和autopublish
个套餐以制定自己的规则。
对不起,看起来不太好,我不知道如何在每个项目下放置一个空格。