0

我有一个 REST api( nodejs+express+mongo) 被两种类型的用户使用:

  1. 最终用户(通过网站、使用 google-signin 的移动应用程序进行身份验证)。
  2. 将以编程方式使用 API 的网关/服务。

我的问题是关于为第二种用户处理身份验证的最佳方法是什么?用户存储在我的数据库中(使用他们的电子邮件 ID 链接到 google-signin)

最终用户创建网关和服务,因此我可以提供一个接口来管理凭据。(例如,如果我使用 API 密钥或公私密钥对,那么用户可以使用该网站添加/删除网关的凭据/服务)。

我正在使用 passport-google-oauth2 策略来处理第一种情况的身份验证。为第二种消费者处理身份验证的最佳方法是什么?

4

1 回答 1

0

首先,OAuth 是一种授权协议,而不是一种身份验证协议。Google 身份验证是在 Web 登录会话中执行的,所以我不清楚这将如何与 REST 客户端一起为您工作。

不幸的是,有很多方法可以解决您的问题,具体取决于您要编写多少代码与您想要使用多少现有服务以及您打算如何进行用户管理。

于 2017-03-23T10:57:11.267 回答