当前位置: 首页 > 知识库问答 >
问题:

谷歌。云bigquery。客户端()忽略提供的作用域,导致在获取驱动器凭据时权限被拒绝

咸利
2023-03-14

我试图通过谷歌查询存储在硬盘中的数据。云bigquery Python库。

我按照谷歌的指南查询硬盘数据。因此,我的代码如下所示:

import google.auth
from google.cloud import bigquery

credentials, project = google.auth.default(
    scopes=[
        "https://www.googleapis.com/auth/drive",
        "https://www.googleapis.com/auth/bigquery",
    ]
)
client = bigquery.Client(project, credentials)

query = client.query("""MY SQL HERE""")
query_results = query.result()

问题是:凭据对象和bigQuery客户端忽略了提供的范围,导致google.api_core.exceptions.禁止: 403访问被拒绝: BigQuery BigQuery:获取驱动器凭据时权限被拒绝。也不包括客户端提供的驱动器范围。

如何将驱动器作用域正确地传递给我的bigquery客户端?

我的本地环境的应用程序默认凭据是我的授权用户,该用户是项目的所有者。


共有2个答案

令狐烨烨
2023-03-14

您应该将电子表格共享到服务帐户电子邮件,您正试图通过电子邮件访问该电子邮件。

长孙兴德
2023-03-14

一旦将应用程序默认凭据设置为授权用户,就不能请求其他作用域。

若要请求其他作用域,请在激活授权用户时这样做。

更简单地说,当您运行gCloud auth应用程序-默认登录时,提供-作用域选项,然后是您想要的作用域。对我来说,那就是gCloud auth应用程序默认登录--Scones=openid,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/bigquery

 类似资料:
  • 我正在尝试将DataStudio报表连接到表和来自BigQuery的视图。在BigQuery中,表从位于我的驱动器中的GoogleSheet接收数据,视图正在查询同一个表,但添加了一些新字段。当我尝试将图表连接到其中一个数据源时,出现以下错误: BigQuery错误:访问被拒绝:BigQuery BigQuery:获取驱动器凭据时权限被拒绝。 原因是什么?我该怎么做才能解决这个问题? 我要说的是,

  • 我正在使用@google-Cloud/bigQuery将Angular10, Firebase与BigQuery集成。我在我的项目中创建了一个函数文件夹,并在其中添加了密钥json文件,该文件是在谷歌云控制台上生成服务帐户json后获得的。 我的BigQuery仪表板中有两个数据集,其源是Google Drive。但当我试图查询这些表时,我得到了一个错误。 在我的函数文件夹中,我有index.js

  • 从今天起,我们的Airflow服务无法访问BigQuery中的查询。所有作业都会失败,并显示以下消息: [2021-03-12 10:17:28079]{taskinstance.py:1150}错误-原因:403获取https://bigquery.googleapis.com/bigquery/v2/projects/waipu-app-prod/queries/e62030d7-36eb-4

  • 我希望在我遇到的这个错误代码上得到一些帮助。 语境: 我工作的公司使用GSUITE产品。 我的团队有自己的云项目设置。 谷歌硬盘不是个人硬盘。 我们使用Airflow每天/每周/每月刷新BigQuery表。 我遵循了这些解决方案 拒绝访问:获取驱动器凭据时拒绝权限 使用带有Google工作表的BigQueryAPI时出现“全局文件模式时遇到错误”错误 还引用了https://cloud.googl

  • 复制步骤: 在Google Sheets中创建工作表 启用部署管理器 我已经找到了一些这样的线索,但是它们都引用了使用“范围”来添加。我不知道如何向部署管理器请求添加作用域,也不知道作用域是如何工作的。 任何帮助都将不胜感激。

  • 我正在尝试Google Cloud Vision API(测试版),它返回“权限被拒绝”消息。但该项目启用了“云视觉API”。感谢您的帮助。 谷歌API浏览器中的错误详细信息