【问题标题】:Using Google Play Services to authenticate with App Engine using OAuth2使用 Google Play 服务通过 OAuth2 向 App Engine 进行身份验证
【发布时间】:2012-09-29 23:52:48
【问题描述】:

Google Play 服务recently released a new OAuth 2.0 API 用于轻松进行 OAuth 2.0 身份验证。我希望能够与 App Engine 应用程序同时使用它。

但是,我无法找到任何方法来执行此操作,并且我不确定在获得令牌后应该如何查询 App Engine。每当我查询 App Engine 时,是否应该将其添加到标题中? OAuth 2.0 甚至可以与 App Engine 一起使用吗?我应该使用特定的范围吗?如果可能,我想使用提供配置文件的范围:https://www.googleapis.com/auth/userinfo.profile

谁能告诉我我做错了什么?或者如果还没有办法在这样的 App Engine 服务上进行身份验证?

【问题讨论】:

  • 抱歉,您到底想达到什么目的?如果您想从 Android 应用程序中获取用户的个人资料,您可以直接从 Google 查询此信息,而无需在任何地方使用您的 App Engine 应用程序。
  • 我想根据 App Engine 代码对用户进行身份验证,以便他们可以作为经过身份验证的用户执行操作。
  • 所以您的 App Engine 应用程序存储了用户的任何私人数据,并且他可以使用他的 Google 帐户登录吗?或者用户应该登录到您的 App Engine 应用程序,以便该应用程序可以使用 Google API 访问用户的数据?
  • 我只想进行基本身份验证。我不需要存储有关用户的任何额外信息(名称会很好,但不是必需的)。 App Engine 允许 Google 帐户身份验证,并且新的 Google Play 服务看起来可以让通过 OAuth2 的 Google 帐户身份验证变得非常容易。不过,也许我在这里遗漏了一些东西。
  • 你找到解决办法了吗?

标签: android google-app-engine oauth-2.0 google-play-services


【解决方案1】:

对 GAE 的 OAuth2 身份验证仅适用于 GAE 端点 (AFAIK),目前尚未对所有人开放。您可以注册受信任的测试程序,您可能会获得访问权限。您可以使用 ClientLogin 通过标准 AccountManager (使用“啊”服务名称)获取身份验证令牌来验证用户身份,有多个示例/博客关于此。但是,这已被弃用,并将在大约一年左右停止工作。

【讨论】:

  • 那么,现在从 Android 应用程序执行此操作的“正确”方法是什么?或者就此而言,一部iPhone? (基本上,我正在寻找一个不涉及 App Engine Connected Android 应用程序,因为 A)不适用于 iPhone 和 B)不适用于我正在使用的 python App Engine) .
  • “连接的应用程序”似乎已被默默地弃用,GWT 也是如此。端点看起来很不错,并且在发布时可能是推荐的技术(适用于 iPhone、Windows 等。客户端库会自动生成)。现在,我会说使用 ClientLogin,它在 Android 上是无缝的,不需要输入密码或使用 WebView 来获取令牌(但在 iPhone 上,您需要它们提供密码)。或者根据个人资料信息自己编写,例如:alex.cloudware.it/2012/02/…
猜你喜欢
  • 1970-01-01
  • 2015-01-02
  • 1970-01-01
  • 2016-01-27
  • 2012-11-20
  • 2014-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多