2015-02-11 67 views
1

我已经看到phonegap身份验证和基于JS的服务器应用程序验证。 我正在尝试为我的J2EE电子商务应用程序构建一个phonegap应用程序。 J2EE应用程序为我的phonegap应用程序提供了基于rest的api。我想使用OAuth身份验证,以便在移动屏幕上提示用户进行身份验证,这是如何实现的?OAuth流通过phonegap和服务器端验证用户

我有通过JS的oauth认证的知识,但问题是如何确保J2EE应用获得适当的认证用户请求。

回答

2

你可以在你的webapp中使用Stormpath的Servlet Plugin。这为您实现JS客户端+ OAuth令牌认证流程为documented here

当JS客户端获取返回的令牌时,它也会在仅HTTPS(安全,仅限http)cookie中返回。未来对您的应用程序的所有请求都会保留该令牌并发送它 - 服务器插件知道如何查看令牌,验证数字签名以及将用户帐户身份“绑定”到请求。

这使您可以使用服务器端会话(无服务器端状态=高可伸缩性)安全地识别哪个用户正在发出给定请求而不使用。只要您从登录中使用HTTPS直到用户注销,您就可以信任该身份。

+0

谢谢Les,我没有使用插件,但这帮助我了解流程。我使用[链接](https://github.com/gary-rowe/DropwizardOpenID)代码与inAppBrowser for phonegap。为特定设备和会话令牌生成首次永久令牌。向手机发回永久令牌。 下一次每当会话令牌过期时我使用带设备ID的永久令牌来获取新的会话令牌,这样我就不会让用户通过谷歌OAuth再次登录。 – 2015-02-20 13:24:37

+0

@sanjaypatel很高兴听到它帮助提出了解决方案的途径! – 2015-02-20 17:38:25