AJB*_*AJB 5 javascript api cross-domain node.js express
我正在为我的Node.js/Express.js应用程序开发一层安全性,我希望限制对域白名单的访问.
破败不堪:
Project在我的系统上创建一个.Project发出一Public Key和Secret Key将被用于创建签名的请求.Project都需要提供他们希望能够访问该API的域的白名单Project.这是在基于Web的控制台中完成的,而不是作为每个请求的一部分.req.get('origin')用于确定请求的原始域.在代码中:
var app = require('express');
app.post('/API-Endpoint', function(req,res) {
var originDomain = req.get('origin'); /// e.g. mysite.com
/// Origin is then checked against the whitelist array of domains
});
Run Code Online (Sandbox Code Playgroud)
问题
实现您所寻找的目标的最佳方法是完全忘记域,并可选择允许将 IP 范围列入白名单。话虽如此,世界上一些最大的 API 甚至不使用这个安全层(即 eBay、亚马逊 Marketplace 等)。
不过,为了解决额外的偏执,您可以让您的客户设置子网来启动他们的自动缩放服务器,从而为他们提供白名单的静态 IP 范围。然后,只有该 IP 范围内的服务器才会被授予访问您的端点的权限。
这是 AWS 上的一个问题,对此进行了更多解释: https://forums.aws.amazon.com/thread.jspa? threadID=233469
| 归档时间: |
|
| 查看次数: |
2223 次 |
| 最近记录: |