firebase gcloud Firestore导入:许可_拒绝

cdmah0mi  于 2022-12-30  发布在  其他
关注(0)|答案(1)|浏览(232)

我正在尝试将一个包含Firestore数据库导出的桶导入到Anoher Firebase项目中。我一直在关注this guide如何做到这一点。
在运行gcloud firestore import时,我遇到了以下问题:
错误:(gcloud.firestore.import)许可被拒绝:服务帐户无权访问Google云存储文件:/bucket/EXPORT_PREFIX.overall_export_metadata。有关https://cloud.google.com/datastore/docs/export-import-entities#permissions所需权限的列表,请访问www.example.com。错误详细信息:service-XXX@gcp-sa-firestore.iam.gserviceaccount.com没有storage.buckets。请访问Google云存储bucket。
但是,我使用了以下命令来授予对存储桶的访问权限:

gsutil iam ch serviceAccount:SOURCE_PROJECTID@appspot.gserviceaccount.com:admin gs://bucket_name

这没有给予我任何错误,所以我假设它按预期运行。我检查了三次,相信我在使用这些命令时正在正确的项目中工作。
我认为import命令可能是使用SOURCE_PROJECTID@appspot.gserviceaccount.com:admin以外的另一个服务帐户运行的,但我不确定这一点,也不确定如何确保使用正确的服务帐户。
任何解决这个问题的帮助都将非常感谢!:)

pcww981p

pcww981p1#

错误消息显示为包含有问题的服务帐户:

Error details:
service-XXX@gcp-sa-firestore.iam.gserviceaccount.com
does not have storage.buckets.get access to the Google Cloud Storage bucket.

我认为您需要:

gsutil iam ch \
serviceAccount:[service-XXX]@gcp-sa-firestore.iam.gserviceaccount.com:objectViewer \
gs://[bucket-name]

更换[service-XXX][bucket-name]

相关问题