python – oauth.get_current_user()可以与OAuth2一起使用吗?

python – oauth.get_current_user()可以与OAuth2一起使用吗?,第1张

概述我很难找到关于在我的GAE应用程序中使用OAuth2的明确答案.首先,这不是一个端点应用程序,只是一个普通的老 python应用程序. 如果在我的应用程序中使用OAuth端点(appid.appspot.com/_ah/OAuth*),我可以获得oauth.get_current_user()方法以在需要时返回经过身份验证的用户,但这是使用OAuth1,已弃用 – Google的开发文档非常清楚. 我很难找到关于在我的GAE应用程序中使用OAuth2的明确答案.首先,这不是一个端点应用程序,只是一个普通的老 python应用程序.

如果在我的应用程序中使用OAuth端点(appID.appspot.com/_ah/OAuth*),我可以获得oauth.get_current_user()方法以在需要时返回经过身份验证的用户,但这是使用OAuth1,已弃用 – Google的开发文档非常清楚.

所以我尝试使用Google的OAuth2端点来验证我的应用程序,并且我已经获得了访问令牌,但是我的GAE应用程序中的oauth.get_current_user()调用总是抛出异常(无效的OAuth sig),并且在预期时永远不会呈现User对象.我已尝试使用各种范围授权我的应用程序(https://www.GoogleAPIs.com/auth/userinfo.email\u0026hd; https://www.GoogleAPIs.com/auth/appengine.admin),但它没有当我使用OAuth2令牌签署请求时,我的GAE应用程序从不接受请求为有效,oauth.get_current_user()始终抛出异常.

所以我的问题是,在使用OAuth2令牌签署请求时,我是否应该能够在我的GAE应用程序中使用oauth.get_current_user()调用?如果是这样,我必须授权哪些范围访问GAE应用程序?

解决方法 TL;博士;

在appengine代码中尝试这个:

from Google.appengine.API import oauthoauth.get_current_user(ScopE)

过去一周我一直走在同样的道路上,在模糊的谷歌文件中徘徊.

我最后的理解是,AppEngine从未正式进入OAuth2领域.您在整个Google Api文档中看到了这些“OAuth1已被弃用”的消息,但在appengine文档中它实际上很安静.它谈论OAuth,但没有谈论哪个版本.

这是我认为当前状态的情况(截至2013-12-07):

> [1] Authorizing into appengine with OAuth:* .appspot.com / _ah /方法.不说哪个版本.可能只有1.0.
> [2] Google API Authorization:所有OAuth2大惊小怪,但它是关于请求其他Google Api,而不是关于appengine.
> [3] Google accounts authentication with OAuth 2.0:使用常规Google帐户登录.不幸的是,appengine不包括在范围内.

还有另一个文档讨论OAuth 2.0 on appengine,但它是关于从appengine服务器调用Google Api,而不是登录它.

我在[3]中尝试使用OAuth2方法访问appengine服务器,但是oauth.get_current_user()方法引发了异常.也尝试了各种范围,希望一个适合appengine,只有失败.

然而,

我在from another SO answer中发现的是该方法的未记录使用:

oauth.get_current_user('https://www.GoogleAPIs.com/auth/userinfo.email')

将范围作为参数传递.如果消费者已经使用范围传递了访问令牌,这就有效.

事实证明它毕竟是在appengine code.它不是documented.

欢迎对任何误解进行改进或更正.

总结

以上是内存溢出为你收集整理的python – oauth.get_current_user()可以与OAuth2一起使用吗?全部内容,希望文章能够帮你解决python – oauth.get_current_user()可以与OAuth2一起使用吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1192968.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存