我想使用环回通行证通过第三方登录我的应用程序。但是,与其让任何人成功与第三方进行身份验证,我希望只允许那些电子邮件已配置为用户访问权限的帐户(即我想将来自该提供商的人员列入白名单)。
这可能吗?我看到的几乎所有关于环回通行证和 OAuth 以及类似策略的例子似乎都假设我很高兴让每个 Google/Facebook 用户访问我的应用程序,而我的情况并非如此。
最佳答案
loopback-example-passport存储库扩展了一些基本模型(User、AccessToken、UserIdentity 和 UserCredential)。
您可以创建一个新文件 /common/models/user-identity.js
,它可以在创建新身份时进行监听。在那里尝试这样的事情:
module.exports = function(userIdentity) {
userIdentity.observe('before save', function(context, next) {
if (context.instance) {
console.log(context.instance.profile._json);
}
}
}
内
context.instance.profile._json
,您可以观察新创建用户的详细信息、修改其详细信息或根据需要将其删除。
关于oauth - 环回 Passport 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37442304/