1

我正在使用 Rails 为移动应用程序编写 API,而 OAuth 似乎是处理用户授权的标准方法。

如果我正确理解 Doorkeeper 文档,它要求用户在授予移动应用程序访问权限之前登录网站。

可能的问题是确实没有任何网站(它可能在未来,但现在它只是 api)。我希望在 ios 应用程序中处理用户创建/登录等。

这让我想知道 OAuth 是否是这里的正确解决方案?

4

1 回答 1

2

根据rfc6749第 4.3 节,OAuth“资源所有者密码凭据授予”将授予授权令牌和可选的刷新令牌给定用户名和密码。因此,移动应用程序无需存储用户名和密码即可获得授权访问。它变得像一个使用令牌和刷新令牌的长时间运行的会话。 OAuthClientSetup一个针对门卫 api 运行的 iOS 示例。

因此,无需网站登录身份验证和访问授权即可获得授权的 OAuth 方法。

剩下的就是如何从您的移动应用程序注册新用户。同意 OAuth 似乎不会涵盖这一点。 OmniAuth将允许您注册由第三方站点授权的用户。您允许用户成为他们在 Twitter 或 FaceBook、StackOverflow 或 GitHub 或其他任何地方的用户。也许这会有所帮助。

于 2014-02-26T03:30:51.020 回答