【发布时间】:2015-01-07 00:16:56
【问题描述】:
我已经使用sailsjs 开发了一个REST API,我想添加OAuth2 授权来保护这个API。我对 OAuth 很陌生,不知道从哪里开始。
我发现了几个可用于此目的的模块,例如 oauth2orize 及其用法示例 https://github.com/aaron524/sails-oauth2-provider-example,但我不完全了解其内部工作原理。
基本上,我将有几个客户使用我正在开发的 API: - 我信任并且我想与“资源所有者凭据授权”一起使用的客户 - 我不信任且将使用授权码流程连接的客户端
我正在考虑在sails 应用程序中向客户端模型添加一个受信任的属性,然后当用户登录应用程序时: - 他将可以直接访问其资源(受信任应用程序的情况) - 他将被要求批准或拒绝应用程序访问他的资源(不受信任的应用程序的情况)
这是一个好方法吗?有关如何根据客户端信任级别选择相应策略的任何指示?
更新
我使用我找到的几个教程和项目在 GitHub 上设置了以下项目。
https://github.com/lucj/sails-oauth2-api
此项目尚未运行。
当用户通过应用程序使用 API 时,我仍然不清楚如何选择正确的授权类型(授权码与资源所有者的密码)。如何将此检查集成到政策中?
我无法在 OAuth 端点(/oauth/authorize、/oauth/token)和对 oauth2orize 的调用之间创建链接。有什么想法吗?
【问题讨论】:
标签: node.js oauth sails.js passport.js oauth2orize