使用PhoneGap和RESTful WS进行OAuth身份验证

时间:2013-08-27 12:38:33

标签: javascript rest spring-mvc cordova oauth-2.0

我正在为一个Web App / PhoneGap应用程序奠定基础,该应用程序将使用RESTful Web服务来共享信息并记住状态,但我正在努力处理身份验证部分。

基本上,我想有两个部分,一个是Web应用程序,另一个是在PhoneGap中开发的胖客户端应用程序,所有客户端HTML和JS部分都是应用程序的本地部分,而不是远程服务。 Web应用程序和PhoneGap应用程序都将使用一些RESTful WS'es来处理存储和状态,并作为Web应用程序的一部分托管(相同的基本服务器代码)。我的目的是使用Spring Roo编写Web应用程序和REST片段,因此Spring Security很可能会在那里使用。在这两种情况下,我都希望通过Google / Facebook / Twitter通过OAuth2处理身份验证。这是我缺乏理解的地方。

我对OAuth的理解是,您必须将用户转发给第三方(Google / Facebook / Twitter),在第三方进行身份验证并返回访问令牌。事实上,在使用传统的Web应用程序模型之前,我已经这样做了。然后,此访问令牌用于对该服务执行操作。从传统的Web应用程序的角度来看,这对我来说很有意义,当我们点击“使用Google登录”按钮时,我只是将用户推送到谷歌,但我似乎无法通过如何在用PhoneGap编写的客户端应用程序,我发现的所有示例都希望远程托管PhoneGap应用程序,我真的不想这样做。此外,我对一些API密钥要求感到困惑,这些要求似乎也基于一个URL来转发请求。

我正在努力的最后一件事是REST电话。我需要知道在进行REST调用时用户是谁,但如果用户对PhoneGap应用程序进行完全本地身份验证,并且身份验证由第三方完成,我将如何识别用户?他们是否将访问令牌传递给我,我对此做了什么?

不可否认,大部分混淆是由于我完全不了解OAuth及其运作方式。

0 个答案:

没有答案