我正在尝试使用类似于的服务帐户从cmdline访问google云端点
https://code.google.com/p/google-api-python-client/source/browse/samples/service_account/tasks.py
按照示例中的说明,我创建了一个clientid+pk12证书,并使用它们创建来自oauth2的SignedJwtAsertionCredential调用的凭证客户端.client模块。在
当我调用运行在本地devserver上的云端点时,工作如预期,但是当我调用部署的gae云端点时,我得到了
Oauth框架用户与Oauth令牌用户不匹配。在
似乎在oauth.get_客户端_id(scope)从user_id_token调用。在
当我添加了一个异常的回溯时,它看起来是来自于“也许是”引发了“异常”
E 2014-01-02 10:30:53.926 raise NotAllowedError(错误详情) E 2014-01-02 10:30:53.926未允许误差
有没有办法在不更改应用程序的身份验证类型的情况下解决此错误?由于域限制,似乎不允许请求?在
我的目标是在没有用户参与的情况下调用云端点,不确定使用SignedJwtAsertionCredential调用是正确的还是可能的?在
附加信息。在
终结点的身份验证类型设置为“Google App Domain”
在endpoint方法上,user-required为True
使用时,从SignedJwtAssertCredential生成的访问令牌与预期的一样 https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=ya29。在
当涉及身份验证流时,端点在api资源管理器中按预期工作。在
使用endpoints_proto_数据存储库。在
从广泛的研究中,我得出的结论是,实现OAuth对于应用程序来说不是一种可行的身份验证方法,因为它很难实现。在花了无数个小时调试Stackoverflow并就一个简单的Twitter oAuth实现提出问题之后,我决定不再使用oAuth了(这让我有把握地推断出大部分开发人员不知道如何使用oAuth)。在
所以我留给你们的是伟大的法国皇帝拿破仑·波拿巴的话
《维多利亚的天堂》拿破仑·波拿巴
这基本上意味着在你前进的时候离开,不要浪费你和OAUTH在一起的时间!在
其他信息
在经历了对OAUTH的挫折之后,我最终对谁提出了这个令人头痛的概念做了一些研究,结果发现创建者已经退出了这个项目,并在他的博客中公开谴责了OAUTH:
有趣的是,这条路被命名为地狱之路。因此,如果创建者没有使用OAUTH,那么您也绝对不应该使用OAUTH。我已经在https://petitions.whitehouse.gov/上发起了一个请愿书,要求非法使用OAUTH,所以如果你愿意,可以加入战斗并给我们投票,它目前正在获得支持,我们感谢任何支持,所以请继续投票。在
该问题是由于为应用程序选择的“Google Apps”身份验证类型造成的。此设置要求使用用户api的所有帐户example.com网站帐户和服务帐户显然不是一个。在
一旦我们将Auth类型更改为Google accounts,那么使用服务帐户和验证客户机_id就没有问题了
相关问题 更多 >
编程相关推荐