回答

1

为了使用任何Google的API,他们需要知道你是谁。您作为开发人员由您在Google Developer Console上创建的项目进行识别。项目创建完成后,您可以创建许多不同类型的凭证,包括服务帐户凭证和Oauth2凭证。

答案:没有,没有办法编程式地创建服务帐户凭证。如果不先在Google开发者控制台上创建项目,也不可能使用Google API。

注意:Google Cloud Resource Manager确实存在,但它允许您执行的操作非常有限。

如果其他人要运行您的应用程序来访问他们的Google分析数据,您应该在应用程序中使用Oauth2,而不是服务帐户。

服务帐户的设计方式是让开发人员授予其他人访问相关开发人员拥有的数据的权限。他们并不是真正希望新手用户在Google开发者控制台上创建自己的项目并生成凭证。

+0

太棒了!谢谢!建议和答案:)现在有太多问题萦绕在我的脑海中......一个是**我如何使过程自动化或减少手动步骤(即生成客户机密或启用API,允许客户机ID通过仅提示登录弹出来访问数据)**用于定期提取数据而无需任何手动干预。我很惊讶,因为[compass.co](https://www.compass.co)只是要求帐户登录才能获取分析数据(GA将插入compass.co帐户)......就是这样,我得到报告。 –

+0

提示登录是Oauth2,一旦用户认证您保存刷新令牌,并且您可以随时访问他们的数据。除非你创建多个应用程序,否则我不确定为什么你需要自动化生成项目的过程。您可能想尝试阅读我的Google开发教程系列http://www.daimto.com/google-development-beginners/ – DaImTo

+0

好吧,@DaImTo现在问题是,[compass.co](https:// www .compass.co /)是申请只为谷歌帐户登录只提取谷歌分析数据(我已经在免费帐户尝试过)...并没有其他信息我提供了...像**客户端ID ,客户端秘密**,即使它能够获取GA数据。它是如何工作的? –

0

你基本上是问你是否可以获得通过API查询API所需的凭据。这不起作用。

我也不知道这将如何帮助你。在对Google Analytics帐户执行任何API操作之前,您需要将授权用户(例如服务帐户)添加到您的视图或资产中。如果您处于可以以编程方式将用户添加到帐户的情况,那么您可能只需阅读所需的数据。

+0

谢谢@Eike Pierstorff的注意和答复。是的,最终我正在寻找可以自动化OAuth 2.0身份验证工作流程的流程。 –

相关问题