【发布时间】:2015-12-24 11:37:26
【问题描述】:
我正在使用 Node + express 构建 API。这个想法是能够让其他开发人员登录并注册他们的应用程序,以便我可以授权访问我的 API 端点。
exports = passport.use(new FacebookStrategy({
clientID: '999999999',
clientSecret: '999999999',
callbackURL: "http://localhost:3000/auth/facebook/callback"
},function(accessToken, refreshToken, profile, done) {
profile.access_token = accessToken;
db.mongoClient.connect(db.moments, function(err, db){
var user = db.collection('user');
user.find({'facebook':profile.id}).toArray(function(err, docs){
console.log(docs);
})
})
done(null, profile);
}));
我已经使用passport facebook strategy 进行了设置。这允许开发人员登录到我的应用程序上的个人资料页面,在那里他们会看到我从 facebook 获得的 access_token。我正在使用这个 access_token 来允许我的应用和他们的应用之间使用 bearer token strategy 建立连接。
但是,我还想添加另一层安全性。他们应该注册要对我的应用程序进行 API 调用的域名。这应该可以保护我免受开发人员将令牌传递给其他开发人员的影响(我说对了吗?)。
问题:我如何检查他们是否确实从注册的域名发出请求?
谢谢,
【问题讨论】:
标签: node.js api express oauth-2.0