在Vertex AI自定义容器中访问BigQuery表时遇403权限拒绝错误
解决Vertex AI自定义容器调用BigQuery的403权限问题
问题原因
Vertex AI部署的服务所使用的服务账号,未被授予目标BigQuery表的访问权限,导致出现403权限拒绝错误。
具体解决步骤
1. 确认服务账号
Vertex AI部署模型时,默认使用Vertex AI Service Agent(格式为service-{PROJECT_NUMBER}@gcp-sa-vertexai.iam.gserviceaccount.com),也可自定义指定服务账号。可在Vertex AI控制台的模型部署详情页查看当前使用的服务账号。
2. 配置BigQuery表权限
- 进入BigQuery控制台,定位到目标表
myproject-id.poc_vertex.train_set所属的数据集。 - 打开数据集的权限面板,添加上述确认的服务账号。
- 为其分配合适的角色:仅需读取表数据时,分配
BigQuery Data Viewer角色;需执行查询等操作时,可分配BigQuery User角色。 - 保存权限配置。
3. 验证权限
可通过gcloud命令行验证服务账号权限:
# 激活服务账号 gcloud auth activate-service-account SERVICE_ACCOUNT_EMAIL --key-file=KEY_FILE.json # 查看BigQuery表信息 bq show myproject-id.poc_vertex.train_set
若命令能正常返回表结构信息,说明权限配置生效。
4. 重启服务(可选)
若权限配置后仍报错,可在Vertex AI控制台重启部署的服务,确保服务加载最新权限设置。
内容的提问来源于stack exchange,提问作者Snowfire
相关产品推荐
相关产品推荐

