OnR*_*lve 1 authentication api node.js 3scale
我正在尝试使用使用3Scale API管理的nodejs设置原型API.
我已经能够找到他们的插件集成代码,如下所示:
var ThreeScale = require('3scale').Client;
// keep your provider key secret
var client = new ThreeScale("X");
// you will usually obtain app_id and app_key from request params
client.authrep({ app_id: "Y",
app_key: "Z" }, function(response){
if(response.is_success()) {
// continue
} else {
throw new Error("not authorized " + response.error_message);
}
});
Run Code Online (Sandbox Code Playgroud)
这使得一些意义,我作为服务器模块的一部分.但是,我不确定客户的证书在哪个方程式......
我看到它是因为客户端指向你的应用程序,这里是应用程序的密码......但是实际客户端的用户名/密码呢?在哪里检查?
我觉得我没有抓住他们的架构(可能因为这是我的第一个真正的节点项目,绝对是我第一次使用3Scale)...
那么,客户的要求是什么样的呢?
小智 5
在3scale系统中,app_id和app_key(在此身份验证方法中)表示用户(即开发人员)的凭据.这是因为每个用户可以拥有多个应用程序而一个应用程序只属于一个用户,因此您不需要用户凭据.凭证在3scale系统端进行检查,如果获得授权,他们会报告使用情况并将呼叫转发给您的API.
provider_key标识您的帐户(API所有者),您必须保密(如果有人获取它,他们可以冒充您).
您是否已经查看了3scale的支持网站?有很多关于系统架构的有用信息,一些关于集成的教程等等.您可以在这里查看:http://support.3scale.net
顺便说一句.node.js插件是一个社区插件.您还可以尝试通过nginx反向代理进行集成.