security - 如何将 Backbone.js 应用程序安全地连接到数据库?

标签 security rest backbone.js client-side restful-authentication

我开始计划一个网络应用程序,而 Backbone.js 将非常适合客户端。我一直计划使用节点作为后端,但暂时开放。

我需要一种方法来保护前端应用程序与数据库的连接。我有discussions with others on Quora但我认为这个思维过程过于抽象于核心问题。

我更愿意通过 RESTful 端点访问数据,但我需要确保只有我的应用程序可以与 API 通信。我将完全控制应用程序的前端和后端。有可能围绕数据库构建其他应用程序(在一两年内),但是它们将由我开发(即不是公共(public) API),并且这些应用程序可能会使用单独的 OAuth 端点。

有关应用程序的一些注释(可能有用也可能没用):

  • 该应用计划以 SaaS 模式提供,公司可以订阅并允许多个用户使用。
  • 每家公司的数据都必须安全,并且只有该公司的成员才能访问。
  • 所有流量(前端和应用到 API)都将通过 SSL 发送。

任何有关最佳方法的建议将不胜感激。

最佳答案

我们拥有与您完全相同的设置 - SaaS 模型、多个应用程序(移动、网络等),当我点击您的链接时,Miguel 拥有我们使用的完全相同的解决方案。

带有时间戳并在身份验证时发送到客户端的 token 。我们将该哈希 token 存储在用户模型中,然后我们验证该 token 的每个后续请求。

您可以使用 BaseModel 来扩展 Backbone.Model,通过覆盖 Backbone.Sync 将 token 附加到每个服务器请求

参见here关于他们如何扩展基本 View ,您可以将相同的事情应用于基本模型。

关于security - 如何将 Backbone.js 应用程序安全地连接到数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12542698/

相关文章:

javascript - 对模块化 Javascript 网络应用程序进行单元测试

backbone.js - 轻量级无限滚动与backbone.js

c# - 以管理员身份运行多个应用程序

php - Symfony2 - 动态角色管理

scala - 我们可以使用 Akka 和 Camel 集成来实现 REST 服务吗?

rest - 带有 CORS 和 AttributeRouting 的 ASP.NET Web API2 中不允许使用 HTTP PUT

events - Backbone.js 和 jQuery-UI 的自定义 Widget 不能和平相处吗?

php - 我在哪里可以找到 web 项目 "security checklist?"

security - 防止网站上的暴力登录

java - 在发送给客户端之前注释掉 json