我真的对Google OAuth 2感到困惑。
我的要求不是他们在所有文档中描述的redirect user
到google login page
。
我的要求是我有python脚本,我想作为cron作业运行,可以访问我的日历事件只读目的
他们所有的文档都提到重新浏览到浏览器来验证用户,但没有提到我可以验证我的个人帐户,就像输入我的username and password
一样简单,但我在他们的文档中找不到任何内容
我读了这个
https://developers.google.com/accounts/docs/OAuth2ServiceAccount#libraries
他们告诉使用JWT
,但他们没有提到如何在任何代码中执行此操作
{"alg":"RS256","typ":"JWT"}.
{
"iss":"761326798069-r5mljlln1rd4lrbhg75efgigp36m78j5@developer.gserviceaccount.com",
"scope":"https://www.googleapis.com/auth/prediction",
"aud":"https://accounts.google.com/o/oauth2/token",
"exp":1328554385,
"iat":1328550785
}.
[signature bytes]
我不确定只是在API的V3中访问我的个人日历会很难
答案 0 :(得分:1)
我会使用foauth.org
,这使得OAuth 2.0变得更加简单。您还可以使用允许与foauth.org
互动的requests-foauth
library。
另一个简单的(我的意思是干净,简洁和pythonic)库是python-foauth2
,它带有一个使用谷歌API的完整示例。
一些注意事项:
OAuth2服务帐户适用于服务器到服务器应用程序,这意味着它不应与您的帐户(或您的日历)绑定。
对于脚本,最好遵循OAuth2 for installed apps的说明;打开浏览器以授权应用程序/脚本并获取可以兑换令牌的代码。 OAuth2 for devices的说明几乎相同,但提供了2个代码,一个用于在浏览器中输入,另一个用于存储在设备上(或两者都来自计算机......)。