【问题标题】:"Permission denied while getting Drive credentials" error occurs when accessing GoogleSheet linked BigQuery table from Google Apps Script从 Google Apps 脚本访问 GoogleSheet 链接的 BigQuery 表时出现“获取驱动器凭据时权限被拒绝”错误
【发布时间】:2021-10-15 10:23:16
【问题描述】:

以下是我最初的问题,但我尝试了几个查询,终于接近解决问题。

按照教程,我已经设法从 Google Apps 脚本访问 BigQuery,但是当查询包含 GoogleSheet 链接表时,它会给出“获取驱动器凭据时权限被拒绝”错误。

由于 BigQuery 提供了创建与 GoogleSheet 链接的表的选项,因此我在此设置中有多个表。

没有链接表的查询有效,因此代码的基本设置很好,我相信凭据设置在 BigQuery 中。
我确实可以访问 BigQuery 中链接的 GoogleSheet。

如果有人知道如何解决这个问题,我将不胜感激。





我正在尝试从 Google Apps 脚本访问 BigQuery,并通过下面链接中的教程进行操作。
https://developers.google.com/apps-script/advanced/bigquery#run_query

我已设法在教程中运行脚本,因此继续访问我自己的数据集,其中出现如下错误

GoogleJsonResponseException: API call to bigquery.jobs.query failed with error: Access Denied: BigQuery BigQuery: Permission denied while getting Drive credentials.

对于 python,有一些示例可以添加本地文件,例如 service_account.json,其中包含所有凭据数据。 GAS 有appsscript.json,但这似乎是不同的格式。

还有其他地方可以设置凭据吗?

BigQuery 和 Google Apps Script 归同一个 google 用户所有,因此允许从 chrome 浏览器访问。

【问题讨论】:

  • 代码中的项目ID更新了吗?
  • @Karan 是的。我已经修改了这个问题。错误出现在google sheet 链接表附近,但不知道下一步在哪里。

标签: google-apps-script google-bigquery


【解决方案1】:

我的 Google Apps 脚本遇到了同样的问题。修复步骤:

  1. “服务”下启用 Google Drive API

  2. 在项目/函数的开头添加 DriveApp.getRootFolder(); 以获取 Drive Auth Scope。

应该可以!

【讨论】:

    猜你喜欢
    • 2021-08-27
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-04
    • 1970-01-01
    • 2014-08-02
    • 2017-10-30
    相关资源
    最近更新 更多