小编Sea*_*n M的帖子

如何在AppEngine上使用Appengine的OpenID和facebook OAuth混合进行身份验证?

Appengine支持联合登录,其中可以将任意OpenID提供程序添加到可以对用户进行身份验证的各方列表中.但是,一些组织 - 尤其是Facebook - 不支持OpenID.如何将GAE提供的OpenID支持与支持OAuth或其他登录机制的机制相结合?

更多细节(GAE Python假设)......

我对OpenID机制​​的工作方式的理解如下:

  • 我从我的应用程序的配置选项中选择联合登录
  • 这使我可以通过该create_login_url机制轻松添加OpenID提供程序
  • 有一些Google会话管理用于跟踪经过身份验证的用户
  • 我使用login: requiredmy 控制对资源的访问app.yaml
    • 会话管理将在允许访问这些资源之前检查用户是否已通过身份验证

我遇到的问题是,我无法看到这种方法如何适合Facebook的OAuth - 如果资源是由谷歌(每个app.yaml)控制访问,哪里可以插入Facebook身份验证?

笔记:

  • 我知道OpenID和OAuth是不同的 - 我现在只对使用facebook进行身份验证感兴趣
  • 我确信有很多不同的方法可以解决这个问题 - 我只是想知道是否有一些标准方法/最佳实践

python openid google-app-engine facebook

6
推荐指数
1
解决办法
782
查看次数

Appengine的社会认证有哪些不同的选择 - 他们如何比较?

[这个问题的目的是捕捉我的发现和理智检查它们 - 我会提出我的答案toute套件,看看其他答案和评论出现.]

我花了一点时间试图了解(python)Appengine的不同社交认证选项.我对Google提供的身份验证机制如何与其他社交身份验证机制进行交互感到特别困惑.由于谷歌与第三方OpenID提供商的良好整合,但一些最大的社交网络不是OpenID提供商(例如facebook,twitter),因此情况变得复杂.[请注意,Facebook可以使用OpenID作为中继方,但不能作为提供商使用].

接下来的问题是:在Appengine中社交认证的不同选择是什么?每种选择的优缺点是什么?

python openid google-app-engine oauth facebook-authentication

6
推荐指数
1
解决办法
546
查看次数

OAuth提供程序,具有用于单个应用程序的多个使

我正在开发一个使用OAuth的appengine应用程序.当然,我正在同时处理应用程序的多个版本 - 用于开发的本地版本,暂存版本和部署版本.

要使用这些,我需要三组独立的OAuth使用者密钥/机密,因为在提供商的站点上定义了身份验证回调.

我想知道提供商是否有办法为给定的应用程序提供多个密钥/秘密 - 这似乎比每次设置一个新的应用程序更有意义.(当然,它需要提供者实现这一点,但实现它似乎很自然,我还没有看到它).

更一般地说,使用什么标准方法来解决这个问题 - 我的猜测是注册多个应用程序并在应用程序中使用逻辑来确定它是处于开发模式,登台还是部署.欢迎任何想法.

oauth

1
推荐指数
1
解决办法
632
查看次数