Google App Engine(python)授权Web服务/第三方客户端

问题描述 投票:2回答:1

我有一个Google App Engine项目,我想使我的REST API对第三方可用。 像twitter API。

Twitter要求发送用户名和密码,以便可以对其进行授权-我可以使用Google用户帐户执行此操作吗?

我在该网站的某个地方读过,这不是首选方法,因为他们的凭据已输入到第三方应用程序中/已通过等。

我不想过于复杂,并将其重定向到Google自己的登录名/验证码等。 我已经看到了它的实现-甚至对于台式机/电话/小工具来说,这可能也不起作用。

是第三方应用程序调用我的服务的一种解决方案-该应用程序在我的网站上调用页面(要求登录-我只是添加登录权限),然后用户登录,然后我的应用程序创建一个长令牌,然后将其传递返回第三方应用程序,然后将其存储在自己的存储库中,并将其作为令牌arg传递到发布/放置/删除请求中。 然后,我的REST服务将检查令牌并对照查找(令牌|用户密钥)对进行配对,并允许/拒绝方法调用。

我还可以向该应用询问他们的域名吗? 并存储它。 我想我可以在REST服务上读取请求的网址,并检查它们是否匹配等?

这是一个合理的解决方案,还是我住在90年代?

python google-app-engine rest authorization
1个回答
1
投票

OAuth就是在这种情况下创建的。 这是您刚刚描述的那种auth-token方案的规范,如今已经相当广泛了

为了平衡起见 ,请参见最近的StackOverflow线程

© www.soinside.com 2019 - 2024. All rights reserved.