我正在为我的应用程序实现一个Web服务器API,我陷入了弄清楚我应该使用哪种身份验证方法来验证用户(以及其他客户端应用程序)的请求的过程中。我认为我并不真正了解OAuth和其他身份验证协议的用途。
我希望在没有网络浏览器干预的情况下执行身份验证,完全来自我的iPhone应用程序或其他自定义第三方客户端。基于会话的身份验证是一种很好的方式吗? (例如)Facebook iPhone客户端如何使用Web API进行身份验证?我不认为它使用OAuth或类似的东西,因为从不显示触摸登录/授权表单。据我所知,OAuth仅用于第三方应用。但为什么会这样呢? iPhone客户端难道也不能被视为第三方应用程序吗?
如果我的问题模糊不清,我很抱歉,请指出我缺少的细节等等。谢谢。
答案 0 :(得分:3)
你是对的。 Facebook iPhone虽然可以,但不会使用OAuth进行身份验证。您可以验证它here。而且我认为因为它是Facebook本身的应用程序,当您正是网站所有者时,添加另一层安全性很麻烦。
如果您不打算支持其他第三方客户端访问您的用户资源,那么基于cookie的身份验证是可以的。否则,你可能想要提供OAuth,我认为值得实施,因为,谁知道,YGNI,将来。