在没有浏览器的情况下授权 google api 客户端?

Eri*_*ikR 3 google-api oauth-2.0

我有一个 python cron 作业,它对我在笔记本电脑上运行的日历执行操作。

我目前正在为 python 脚本使用“本机应用程序的客户端 ID”。

授权 client_secrets.json 凭证在台式机或笔记本电脑上不是问题,因为我有一个运行 javascript 的完整 GUI 浏览器。但是,如果我将它移动到另一台服务器,在我的笔记本电脑上运行的 client_secrets.json 文件似乎不起作用。

我想将 python cron 作业移动到云服务器。我的问题是:

  1. 在一台机器上授权的 client_secrets.json 文件是否应该在另一台服务器上工作?
  2. 在没有 GUI 浏览器(或不运行 javascript 的浏览器)的情况下授权 client_secrets.json 凭证是一个问题。是否可以编写授权脚本(因为我有 Google 用户名和密码)?
  3. 我应该使用“本机应用程序的客户端 ID”以外的其他授权方法吗?

Eri*_*all 5

您可能需要设置一个服务帐户。

它允许您从另一台服务器访问 google api,而无需 oAuth 中间人。

在这里阅读:https : //developers.google.com/accounts/docs/OAuth2ServiceAccount