【问题标题】:Facebook OAuth on Google App Engine with iOS带有 iOS 的 Google App Engine 上的 Facebook OAuth
【发布时间】:2013-02-21 08:20:28
【问题描述】:

我仍然无法找到任何类型的教程,用于在 Google App Engine 上使用 OAuth 2 Facebook 对原生 iOS 应用程序进行身份验证。我意识到我可能需要在 GAE 上使用代理(例如:Authenticate with Google App Engine from an Iphone Native Client)来创建与 facebook 的会话,但是使用原生 facebook UI 进行 SSO 的最简洁方法是什么?

我想我会使用 Facebook ios Auth 教程中的内容:http://developers.facebook.com/docs/tutorials/ios-sdk-tutorial/authenticate/

但是,我该如何将会话提供给我的 GAE 服务器并将会话缓存在客户端设备上,以便它可以验证对我的服务器的 https 请求?我基本上想在 GAE 上使用 simple-auth 并让我的 iOS 应用程序像本机(Web)客户端(但不使用 UIWebViews)。没有简单的方法吗?

顺便说一句,我在 Google App Engine 上使用 python。我为 Java 找到了这个,但老实说我不知道​​它到底是做什么的,因为文档还没有写完 http://www.lean-engine.com/index.html

类似的未回答问题:https://stackoverflow.com/questions/14878727/oauth-from-native-ios-app-with-oauth-from-facebook

编辑:我基本上想要一个类似于 Draw Something 和其他 Zynga 游戏的登录,允许用户简单地使用他们的原生 Facebook/iOS6 身份验证来验证对我的服务器的 API 调用。

EDIT2:找到这篇内容丰富的帖子,但仍然没有关于如何做到这一点的教程Design for Facebook authentication in an iOS app that also accesses a secured web service

【问题讨论】:

  • 我应该使用 GTMOAuth2 之类的东西来验证对我的服务器的请求并在 GAE 上使用 simple-auth 吗?我对所有不同的身份验证过程有点困惑。

标签: ios google-app-engine oauth-2.0 single-sign-on facebook-oauth


【解决方案1】:

所以基本上我所做的就是在后端实现 gae-sessions https://github.com/dound/gae-sessions/wiki

然后我在前端实现了facebook ios SDK认证。

然后我将 access_token 发送到 GAE,在那里我对 /me 进行 facebook 图形 API 调用,并创建一个包含有关用户和设备的信息的会话,并确保请求是从我的 ios 应用程序发出的。

然后在后续请求中,我验证会话中的用户与尝试访问数据的用户相同,并且该调用也来自我的 ios 应用程序。

如果任何人有任何使这更安全的建议,请随时发表评论或发布答案。

【讨论】:

  • 我正在考虑做同样的事情,但在 GAE 上使用 Go:iOS 应用、Facebook 登录和 Web 服务。今天实现这一目标的最佳方法是什么?谢谢!
猜你喜欢
  • 1970-01-01
  • 2012-02-15
  • 2017-11-17
  • 1970-01-01
  • 2017-01-10
  • 2011-01-22
  • 1970-01-01
  • 2010-11-13
  • 1970-01-01
相关资源
最近更新 更多