Analytics PHP 接口 (GAPI) 用户模拟

Posted

技术标签:

【中文标题】Analytics PHP 接口 (GAPI) 用户模拟【英文标题】:Analytics PHP Interface (GAPI) User Impersonation 【发布时间】:2015-06-04 14:27:06 【问题描述】:

我目前在 Google Analytics(分析)中拥有大约 100 个网站,分布在几个不同的 Google 帐户中,并且一个帐户拥有每个网站的完全权限。如果可能,我希望避免手动将 Google 服务帐户的权限添加到每个分析配置文件。

我正在使用Google Analytics php Interface

尝试使用 $delegate_email 参数模拟用户时,我收到以下异常:

GAPI: Failed to authenticate user. Error: "
    "error": "unauthorized_client",
    "error_description": "Unauthorized client or scope in request."

我在其他地方读到过关于需要使用 Google Apps 管理控制台'Delegate domain-wide authority to the service account'。但是,我们根本没有 Google Apps。有没有办法解决?

tl;博士 有没有办法使用服务帐户获得对 Google 分析的只读访问权限并在没有 Google Apps 的情况下模拟用户?

【问题讨论】:

我也有这个 - 我在使用 developers.google.com/api-client-library/php/auth/… 之前设置了它,它工作正常。然后我不得不更改电子邮件帐户,因此按照流程为这封新电子邮件创建新的 API/项目/服务密钥等,现在我收到了您的错误。我只能让它在我的原始帐户上模拟一封电子邮件,并且无法重新创建我为使其正常工作所做的任何事情。 【参考方案1】:

我首先鼓励您仔细阅读各种 Scenarios listed on Google OAuth 2.0 文档并确定最适合您的应用程序的文档。

Service account 要求您为要访问的每个帐户添加一个用户,但使用 web server application 最终用户只需授权您的应用程序读取他们的 Google 分析数据。

您要查找的范围是:

https://www.googleapis.com/auth/analytics.readonly

【讨论】:

以上是关于Analytics PHP 接口 (GAPI) 用户模拟的主要内容,如果未能解决你的问题,请参考以下文章

php 使用Google Analytics和GAPI获取网站数据

Google Analytics PHP示例

用于 PHP 的带有电子邮件和密码的 Google Analytics Core Reporting API

将 Electron 与 Google Analytics 嵌入 API 一起使用

PHP Google Analytics PHP示例

php Processwire Google Analytics跟踪