我正在学习 parse.com 来实现小型 html5 客户端。云服务提供开箱即用的方法来注册用户、创建条目等。
要么我遗漏了一两件事(我确信是这样),要么在客户端公开应用程序和 api key 并不是不安全的。我习惯于使用 NodeJS 中继来代理对云服务的调用,该中继实现“最大用户操作/秒”或“API 滥用”,例如“防止用户调用 2000 次“注册用户”功能。
这种安全性是否在 parse.com 服务中的任何地方实现,而我错过了......您对这些向公众开放的 api 的良好用法有何想法?
谢谢
最佳答案
首先,您需要假设任何用户都可以获得您的应用程序 ID 和客户端 key 。 Security中提到了这一点解析文档的部分。您应该将业务逻辑隐藏在云代码中,以便您可以在客户看不见的情况下实现所需的检查/安全性。
另一件事是,一旦用户知道您的应用程序 ID 和客户端 key ,您就无法阻止他们访问您的 API。这将影响解析设置的 API 限制。如果您有恶意用户,他们可以“拒绝服务”您的应用程序,除了更改 key 之外您无能为力。根据您的设置方式,这可能会影响客户。
解决这个问题的一个潜在方法是(正如您所提到的)在客户端和解析之间放置一个瘦代理。您可以在代理中隐藏您的应用程序 ID 和客户端 key ,并在那里实现一些简单的检查以阻止拒绝服务。
关于javascript - 关于 Parse.com 客户端共享应用程序和 API key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28796075/