oauth2orize与API?

Pat*_*ick 8 authentication oauth-2.0 passport.js

我正在尝试将oauth2服务器与API集成,并且非常困难.在这个例子中,使用了3种不同的策略(本地,基本,持票人); 对此有解释吗?如何创建客户端密钥和机密?是否有一个用户简单登录的工作示例?

Bib*_*iba 7

是的,你很头疼:).这不是一个易于实现的策略,但这里是令牌服务器的完整工作示例,依此类推:

https://github.com/jaredhanson/oauth2orize

我花了好几个星期的时间来绕过它,有很多帮助了解Oauth2规格本身.有许多活动部件,简而言之如下:

  1. 用户联系服务提供商(即我的网络邮件).
  2. Webmail提供Facebook身份验证,用户点击和用户被重定向到fb.com上的FB auth端点
  3. FB说,嘿,Webmail想要访问你的邮件,允许吗?用户说是的
  4. FB使用授予Webmail的"访问令牌"重定向用户,返回到webmail回调URL
  5. Webmail,获取该Access令牌并使用它代表用户将Webmail发送到FB api调用.

正如您所看到的那样,复杂性似乎需要您需要提供的令牌服务器,以确保Webmail在令牌服务器上注册为"已知提供者",因此用户授予Webmail代表他们访问FB的权限.

在您的Webmail端,您将不使用任何本地/基本/承载策略.您将使用passport-oauth2策略.承载是一种有效的API策略,类似于呈现API密钥.如果您不需要用户权限来授予对API的访问权限,我强烈建议您使用passport-http-bearer策略,并且您没有头痛.

我希望它有所帮助.


Pat*_*ick 3

为了便于将来参考,我将所有内容拼凑在一起,形成一个易于理解的小示例。oauth2api