xxxx@gmail.com 在项目 yyyy 中没有 bigquery.jobs.create 权限

m f*_*ico 7 google-bigquery

我是 Google Cloud 和 BigQuery 的新手

我有一个包含 2 个项目的云实例。一个是 Compute Engine 项目,另一个是 BigQuery 项目。我可以从 Compute Engine 项目成功获取访问令牌和刷新令牌。但是,当我尝试访问 BigQuery 项目时,出现以下错误:

xxxx@gmail.com 在项目 yyyy 中没有 bigquery.jobs.create 权限

我在 BigQuery 中创建了数据集,将公共数据复制到每个数据集。我还确认 xxxx@gmail.com 是每个数据集的所有者。我能够成功查询数据集。

In IAM, the xxxx@gmail.com has the following:
roles/bigquery.user
roles/bigquery.admin
roles/bigquery.owner
roles/bigquery.viewer
Run Code Online (Sandbox Code Playgroud)

我已经查看了以下链接,但这些建议没有帮助。关于如何解决错误的任何想法?

https://cloud.google.com/bigquery/docs/access-control

Google Big-query api 403-禁止异常

Google API OAuth2,服务帐户,“错误”:“invalid_grant”

用户在项目 gdelt-bq 中没有 bigquery.jobs.create 权限

无需成为项目用户即可在 BigQuery 中运行查询

https://github.com/getredash/redash/issues/1684

用户在项目 gdelt-bq 中没有 bigquery.jobs.create 权限

错误:服务帐户没有 bigquery.jobs.create 权限

虽然错误不在服务帐户上,但我也回顾了: 错误:服务帐户没有 bigquery.jobs.create 权限

The service accounts for both the Compute Engine project and the BigQuery 
project have the following: 
roles/bigquery.user 
roles/bigquery.admin 
roles/bigquery.data viewer 
roles/bigquery.data editor
Run Code Online (Sandbox Code Playgroud)

谢谢!

Jer*_*dit 9

bigquery.user 和 bigquery.admin 角色都包含 bigquery.jobs.create 权限,因此应该足够了。

请确保用户 xxxx@gmail.com 对运行作业的项目 (yyyy) 具有这些权限,这可能与包含数据本身的项目不同。

特别是,您可以通过以下方式查看项目 yyyy 的 IAM 政策:

https://console.cloud.google.com/iam-admin/iam?project=yyyy

在那里,确保 xxxx@gmail.com 在该项目中具有两个角色之一。

  • 嗨@JeremyCondit,我遇到了同样的问题,其中服务帐户具有正确的权限(`bigquery.admin` 和/或 `bigquery.user`),但似乎缺少 `bigquery.jobs.create 权限`。我也可以给你发一封电子邮件吗? (2认同)

小智 9

您需要roles/bigquery.jobUser在项目级别发挥作用。

BigQuery 作业用户角色“提供在项目内运行作业(包括查询)的权限”。

在这里查看更多内容。