Firestore从DEV向PRD导入数据库失败:权限问题求助
解决Firestore跨项目导入权限拒绝问题
核心原因
Firestore跨项目导入操作时,目标项目的Cloud Firestore Service Agent需要具备源存储桶的读取权限,当前错误是该服务账户未被授予源桶gs://trasnf-dev-prod的访问权限。
解决步骤
1. 定位目标项目的Firestore Service Agent账户
在目标PRD项目的IAM控制台,搜索格式为:
service-<PROJECT_NUMBER>@gcp-sa-firestore.iam.gserviceaccount.com
的账户。项目编号可通过目标项目的Cloud Shell执行以下命令获取:
gcloud projects describe <PRD_PROJECT_ID> --format="value(projectNumber)"
2. 为该服务账户授予源存储桶读取权限
切换到DEV项目的Cloud Storage控制台,找到gs://trasnf-dev-prod桶,添加IAM权限:
- 主体:输入步骤1中找到的Firestore Service Agent账户
- 角色:选择
Storage Object Viewer(或更精细的Storage Legacy Object Reader)
3. 验证当前登录账户权限
确保你使用的pedro@correiadesa.com.br账户在目标PRD项目中拥有以下任一角色:
Cloud Firestore AdminCloud Firestore Import Export Admin
4. 特殊场景检查
如果源存储桶启用了VPC Service Controls,需在DEV项目的VPC Service Controls控制台,将目标项目的Firestore Service Agent账户添加到允许访问该存储桶的权限列表中。
重新执行导入命令
完成权限配置后,在目标PRD项目的Cloud Shell重新运行导入命令:
gcloud firestore import gs://trasnf-dev-prod/2024-12-24T00:30:21_45719 --async
内容的提问来源于stack exchange,提问作者pedrocsa
相关产品推荐
相关产品推荐

