gpt4 book ai didi

google-bigquery - 如何修复 BigQuery 中的 'User does not have permission to query table XYZ.'?

转载 作者:行者123 更新时间:2023-12-04 11:45:10 24 4
gpt4 key购买 nike

我想通过 bq 做一个 BQ 查询命令。

这是我的命令:

bq query    --application_default_credential_file $GOOGLE_APPLICATION_CREDENTIALS  
--nouse_legacy_sql 'SELECT * FROM `my_project.data.Document` limit 100'
GOOGLE_APPLICATION_CREDENTIALS指向凭证文件。我可以使用这个变量来启用 gcloud命令访问我的项目资源。

如果我直接在 bigquery 查询 UI 中运行查询,则该查询运行正常。我以我自己的身份登录。

然而 bq因此错误而失败 Access Denied: Table my_project:data.Document: User does not have permission to query table
my_project:data.Document.

我已将这些角色授予凭证文件中包含的服务帐户 id:

enter image description here

我错过了任何角色/权限吗?

最佳答案

我想你可能知道 bq遗嘱执行人authorization标志已被弃用且不再使用,因此标志 --application_default_credential_file在您的初始 bq query 中更像是多余的命令。一般情况下,bq授权参数有时会干扰gcloud证件settings造成不可预知的结果。根据官方指南,您应该按照常规 SDK 说明执行授权设置:

The bq authorization flags are deprecated. To configure authorization for the bq command-line tool, see Authorizing Cloud SDK tools.



Default @appspot.gserviceaccount.com App Engine 服务帐户已授予 primitive Editor角色,承认它可以访问所有资源,附加 roles/bigquery.dataViewerroles/bigquery.user权限在这里是非常不需要的。

关于google-bigquery - 如何修复 BigQuery 中的 'User does not have permission to query table XYZ.'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61491538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com