Appengine支持联合登录,其中可以将任意OpenID提供程序添加到可以对用户进行身份验证的各方列表中.但是,一些组织 - 尤其是Facebook - 不支持OpenID.如何将GAE提供的OpenID支持与支持OAuth或其他登录机制的机制相结合?
更多细节(GAE Python假设)......
我对OpenID机制的工作方式的理解如下:
create_login_url
机制轻松添加OpenID提供程序
login: required
my
控制对资源的访问app.yaml
我遇到的问题是,我无法看到这种方法如何适合Facebook的OAuth - 如果资源是由谷歌(每个app.yaml
)控制访问,哪里可以插入Facebook身份验证?
笔记:
[这个问题的目的是捕捉我的发现和理智检查它们 - 我会提出我的答案toute套件,看看其他答案和评论出现.]
我花了一点时间试图了解(python)Appengine的不同社交认证选项.我对Google提供的身份验证机制如何与其他社交身份验证机制进行交互感到特别困惑.由于谷歌与第三方OpenID提供商的良好整合,但一些最大的社交网络不是OpenID提供商(例如facebook,twitter),因此情况变得复杂.[请注意,Facebook可以使用OpenID作为中继方,但不能作为提供商使用].
接下来的问题是:在Appengine中社交认证的不同选择是什么?每种选择的优缺点是什么?
python openid google-app-engine oauth facebook-authentication
我正在开发一个使用OAuth的appengine应用程序.当然,我正在同时处理应用程序的多个版本 - 用于开发的本地版本,暂存版本和部署版本.
要使用这些,我需要三组独立的OAuth使用者密钥/机密,因为在提供商的站点上定义了身份验证回调.
我想知道提供商是否有办法为给定的应用程序提供多个密钥/秘密 - 这似乎比每次设置一个新的应用程序更有意义.(当然,它需要提供者实现这一点,但实现它似乎很自然,我还没有看到它).
更一般地说,使用什么标准方法来解决这个问题 - 我的猜测是注册多个应用程序并在应用程序中使用逻辑来确定它是处于开发模式,登台还是部署.欢迎任何想法.