首页 > 解决方案 > 在为移动应用程序设计登录时,我是否需要 OAuth 进行用户身份验证?

问题描述

我正在尝试设计一个移动应用程序,但我对实现安全性所需采取的路径有些怀疑。

最初我认为 OAuth2 是必需的,但在网上搜索了一番后,我得出结论(希望是正确的),当我希望用户使用他们用来在我的帐户中创建帐户的凭据对其他应用程序进行身份验证时,使用了 OAuth应用。

所以现在我的问题是:

  1. 我对 OAuth 用例的理解正确吗?
  2. 如果不需要 OAuth,那么将用户名和密码传递给 api 以创建帐户就足够了吗?
  3. 在发出 api 请求时,我如何能够严格访问属于已登录用户的数据?(这仍然基于会话,例如登录网站吗?)

标签: phpapisecuritymobile

解决方案


我假设您没有编写 oauth 服务

  1. 是的,在这种情况下,google、github 等他们为您验证用户并重定向到您提供的重定向 url。
  2. 这意味着您正在使用基本身份验证RFC 7616并且据我所知,它不如不记名身份验证RFC 6750安全。
  3. 这应该由您的应用程序处理,外部 oauth 应用程序只会进行初始身份验证。githubs oauth 流程

推荐阅读