Secure node.js restful API
Secure node.js restful API
我想确保一个restful Api,我试图保持它尽可能简单,以及无状态。
存储、生成和认证api密钥的最佳方式是什么?我正在考虑用node- uid生成密钥,将它们存储在redis中,然后用passport-apikeys对它们进行身份验证。
这个可行吗?或者是否有另一个我错过的最佳解决方案。
我一直在阅读这方面的大量内容,但是很多资源都缺少实际的实现,比如这篇文章
你的解决方案听起来不错,但恐怕不够安全。我建议您用密钥对请求进行签名,这样您就可以保护您的API不被篡改。因此,您需要为将要使用您的API的用户生成一个密钥对,比如access id
和access key
。HTTP请求将有两个部分,一个是access id
,另一个是access key
计算整个请求内容的签名。但是access key
不应该通过HTTP传递。所以在服务器端,你可以通过access key
存储在Redis检查HTTP请求的签名。
你可以使用Node.js加密模块。http://nodejs.org/api/crypto.html crypto_class_hmac
相关文章:
- Backbone.js restful json API design
- 在Hapi.js Restful API中了解请求IP
- 为node.js创建一个动态的restful api
- 在node.js中实现Restful api
- Sencha 2.0 和 Codeigniter RESTful API 生成未捕获的语法错误:意外令牌:
- 使用 RESTful API,如果未定义特定的响应 json 级别,我如何在客户端不出错
- VideoJS通过RESTful API动态更改源代码
- 我可以将初始动态数据从基于RESTful api的服务器端传递到基于角度的前端页面吗
- 用于Emberjs的带有Nodejs的RESTful API
- AngularJS身份验证,带有一个restful api,成功时返回一个令牌
- 使用 HTML5 File API 将文件上传到 RESTful Web 服务
- 具有关联的 RESTful API 设计
- 来自 AngularJS 和查询字符串的 Restful API 调用
- 使用 Restangular 使用 RESTful API - RESTful API 将数组作为顶级对象返回是否安全
- 在 mvc 中使用 angularjs 和 restful web api 获取数据
- 使用 Jquery 连接到 Restful API 以流式传输视频
- 除了从环回 restful API 登录之外,无法获取或发布任何内容
- 如何向 Google API 发出经过认证的 RESTful oAuth 2 后端请求
- 放置一个微调器,而 $http.get 在 angularjs 中从 RESTful API 获取数据
- 如何在 Nodejs 中保护 RestFul API