如何在没有客户端登录的情况下获取客户端数据

How to get client data without having client login

情况

使用 Google 核心报告 API (v3),我需要获取客户公司的分析和其他数据,但由于他们是组织而不是个人,所以让他们通过太繁琐了获取访问令牌的登录流程。

我知道我可以使用 Server to Server auth process 为此类请求获取令牌,但这涉及获取并持有他们的私钥,据我所知,这将授予我近乎无限的访问权限。

问题

服务器到服务器方法是执行此操作的唯一方法还是有更好的方法。

是的,服务器到服务器是唯一不需要客户端登录的方法 (OAuth)。

关于 Google 个 API 的备注:

  • 服务器到服务器有两种形式:Service accountAPI key
  • 绝大多数 Google API(包括 Google Analytics API)仅支持服务器到服务器访问的 Service account 方法
  • 一些(例如Google Search Console)支持API keys而不是Service account
  • 您可以使用 OAuth 并存储刷新令牌,这样如果您想使用需要客户端登录的方法,人们就不必每次都进行身份验证

关于GA的备注:

  • 您应该使用 v4 reporting API as v3 已停产