谷歌帐户的Android身份验证已传递到Google App Engine

Erd*_*rds 5 google-app-engine android google-openid

在深入研究实现这个特定设计的细节之前,我想要一些关于我是否正确接近它的建议/验证.我有Android的初学者知识,Python,GAE和OpenId的高级初学者.

环境

  • Android应用程序
  • 在Google App Engine上使用Python构建的Web服务
  • 使用Google帐户的用户

脚本

我想在我的Android应用程序中启用登录功能,而无需在GAE中编写自己的身份验证系统.在应用程序内,用户应该能够以访客身份进行游戏而无法保存高分.如果用户希望保存他的高分,他将在Android设备上对他的Google帐户进行身份验证.在游戏结束时,经过身份验证的用户高分将通过Google App Engine上的游戏网络服务保存(与他的Google帐户相关联).用户还应该能够注销并将设备交给朋友,该朋友也可以登录,玩游戏并保存与她的Google帐户相关的高分.

设计

  1. 在Android应用程序中,只要用户希望登录,就可以使用OpenId进行身份验证(使用Nick在此处发布的内容.
  2. 从返回的cookie中获取OpenId标记,并将其与当前用户关联.
  3. 对GAE服务进行Web服务调用,将令牌添加为cookie并包含高分
  4. Web服务将验证令牌是否有效
  5. Web服务将确定与令牌关联的唯一Google帐户ID(不知道如何执行此操作,但假设应该有一种方法可以执行此操作)并在交叉引用表中查找该唯一ID以查找用户-game id(以前在帐户设置期间创建)
  6. 保存与游戏内ID相关联的高分.
  7. 允许注销,以便其他用户可以使用他们的Google帐户登录游戏并重复上述过程

谢谢您的帮助

Mar*_* S. 0

我会查看 Google 的 OpenID 而不是 OAuth。OpenID 是联合登录的协议。请参阅Google 有关 OpenID 的信息