API 使用 oAuth2 和第一方应用程序进行身份验证

API authentication with oAuth2 and first-party applications

如果有人回答了这个问题,我深表歉意,但我已经搜索了几个小时,但还是不太明白。此一个具体问题,而不是"which is best"问题。

具体问题斜体

我创建了一个RESTfulAPI,最初是为了完全开放。但是,该组织现在决定创建一个第一方移动应用程序来使用和(在某种程度上)更新数据。

我正在研究身份验证框架 (oAuth2),不确定 oAuth2 是否是实现我们目标的正确方法。并且,如果是,哪些授权授予适用于哪组用户。

我们的目标是:

那么,我假设我们要设置一个 oAuth2 *服务器*(授权和资源服务器)是否正确?

如果是,哪些授权授予适用于上述情况?

最后一个问题:对于使用第一方应用的用户,该应用是否会负责让他们登录并保留他们的访问凭据? API 服务器没有 html,并且是 100% RESTful。它需要提供登录表单吗?

如果您需要根据各种 OAuth2 社交登录对您的 API 用户进行 身份验证 授权 用户,您需要需要某种 API 服务器或服务,您可以在其中定义您的用户和 groups/role 以及根据您的规则对用户可用的范围。

一些云托管选项是:

如果您与上述服务集成,则可以让该服务负责对用户进行身份验证,只需确保每次用户调用都先检查该服务的权限,然后再继续执行任何操作。