我可以为我的 Web API 使用基于会话的身份验证吗?

问题描述 投票:0回答:1
我正在为我的应用程序实现一个 Web 服务器 API,并且我陷入了弄清楚应该使用什么身份验证方法来验证用户(以及其他客户端应用程序)的请求的过程中。我认为我并没有真正理解 OAuth 和其他身份验证协议的用途。

我希望在没有网络浏览器干预的情况下执行身份验证,完全通过我的 iPhone 应用程序或其他自定义第三方客户端进行。基于会话的身份验证是这里的好方法吗? (例如)Facebook iPhone 客户端如何使用 Web API 进行自身身份验证?我不认为它使用 OAuth 或类似的东西,因为触摸登录/授权表单永远不会显示。据我所知,OAuth 仅用于第三方应用程序。但为什么会这样呢? iPhone客户端不也算是第三方应用吗?

如果我的问题含糊不清,请指出我缺少的细节等。

ios authentication web-services oauth
1个回答
3
投票
OAuth 中的“Auth”不是身份验证,而是授权。这意味着,如果您是服务提供商,您可以支持 OAuth,以允许用户根据需要向任何 OAuth 友好的消费者授予对单个资源的访问权限。 OAuth 有自己的安全架构来保护验证、授予和授权的整个过程......然后身份验证是任何进一步请求的重要步骤。

你是对的。 Facebook iPhone 不使用 OAuth 进行身份验证,尽管它可以。您可以在

此处进行验证。我认为,因为它是 Facebook 本身的应用程序,当您恰好是网站所有者时,添加另一层安全性很麻烦。

因此,如果您不打算支持其他第 3 方客户端访问您的用户资源,那么基于 cookie 的身份验证是可以的。否则,您可能想要提供 OAuth,我认为这是值得实施的,因为谁知道呢,YGNI,将来。

© www.soinside.com 2019 - 2024. All rights reserved.