Google App Engine作为移动应用程序的身份验证服务器

时间:2011-01-03 05:33:26

标签: python google-app-engine oauth titanium

我正在尝试将Google App Engine用作本机运行在Android上的移动应用程序的身份验证服务器。用户名和密码将存储在GAE中,我的目标是能够使用GAE存储和验证来自移动应用程序的凭据。这可能吗?我已经研究过OAuth和JSON,但我认为我没有适当的设置。

另外,如果我的方法不对,请指出正确的道路。

2 个答案:

答案 0 :(得分:1)

如果您有兴趣在GAE实例中使用更类似API的实现,我肯定会更多地了解OAuth。但是,如果您只对验证这一个移动应用程序的凭据感兴趣,那么您无需走那么远。

幸运的是,您可以通过SSL呼叫您的GAE实例,这意味着您可以卸载所有握手和加密业务。然后我只需使用http-basic authentication,或者只是在请求中发送用户ID和加密密码作为参数。

在iPhone上有一个用于密码存储的KeyChain,也许有一个Android对应物?无论如何,请确保存储在设备和GAE数据存储区中加密的密码。验证凭据时发送加密密码。您永远不应该知道用户的明文密码。这将提供一定程度的默默无闻,我认为这是足够的(当通过SSL发送时肯定是如此)。

然后,您只需返回帐户凭据是否已经过验证。

答案 1 :(得分:0)

如果通过“storign凭证”表示存储用户名和密码,那么我想你会以错误的方式解决这个问题。无论您是在谈论OAuth还是OpenID,我们的想法是您永远不会看到或无法访问委派身份验证机制的密码(也可能不是用户名)。相反,您会收到一个身份验证或授权令牌来完成您的工作(在OpeniD的情况下,有一些关于此人的元信息,如姓/名和电子邮件地址)。

顺便问一下,您是否考虑过第三方,例如Janrain