如何处理使用 3rd-party 的 restful store api 和 js mvc 框架的安全性?

Posted

技术标签:

【中文标题】如何处理使用 3rd-party 的 restful store api 和 js mvc 框架的安全性?【英文标题】:How to handle the security to use 3rd-party's restful store api, with js mvc framework? 【发布时间】:2012-05-07 21:15:46 【问题描述】:

我在学习angularjs,在demo中找到了一个如何使用angularjs和3rd-party的restful store api的例子:http://jsfiddle.net/tey3H/

我认为这是一个好主意,我可以在客户端编写 js 代码。但是我担心安全性,因为我看到了这段代码:

  var Project = $resource('https://api.mongolab.com/api/1/databases' +
      '/angularjs/collections/projects/:id',
       apiKey: '4f847ad3e4b08a2xxxxxxxxx' , 
        update:  method: 'PUT' 
      
  );

可以看到代码中有一个apiKey,客户端代码具有修改存储在mongolab中的数据的能力。如果其他人找到了密钥,他们也可以轻松修改数据。

所以我想知道如何处理安全性?

【问题讨论】:

【参考方案1】:

取决于服务器。

本示例使用 MongoLab。 AFAIK,他们仍然不支持基于用户的身份验证,因此您必须编写一个应用服务器,它位于 mongo 前面,处理权限。

见http://support.mongolab.com/entries/20269612-rest-api-permissions-and-security-best-practice

【讨论】:

以上是关于如何处理使用 3rd-party 的 restful store api 和 js mvc 框架的安全性?的主要内容,如果未能解决你的问题,请参考以下文章

“不知道如何处理' nvcc 致命错误

如何处理 JSON 响应

如何处理尝试捕获异常android

为啥仍然使用EDI,如何处理?

如何处理`使用未声明的标识符'UIDevice'`

使用 AFIncrementalStore 时返回的部分关系数据如何处理?