You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot应用部署Cloud Run后访问Cloud Firestore权限不足如何解决?

解决方案

你遇到的权限报错是因为Cloud Run运行时使用的默认服务账号没有Firestore的访问权限,本地运行时你使用的是个人账号或本地存放的服务账号密钥,所以可以正常访问,按以下步骤配置即可:

步骤1:获取Cloud Run使用的服务账号

  • 打开Cloud Run控制台,进入对应服务的详情页面,切换到「修订」标签页
  • 找到当前正在运行的修订,查看「安全」板块下标注的服务账号,默认值为[你的项目ID]-compute@developer.gserviceaccount.com

步骤2:为服务账号配置Firestore访问权限

  • 进入Cloud IAM控制台,在权限列表中找到上一步查到的服务账号,点击编辑按钮
  • 按需添加对应权限角色:
    • 仅需读取Firestore数据:添加Cloud Datastore User角色(Firestore与Datastore权限角色通用)
    • 需要读写Firestore数据:添加Cloud Datastore Owner角色
    • 生产环境建议遵循最小权限原则,自定义只包含所需操作的专属角色

步骤3:重新部署Cloud Run服务

  • 权限配置完成后,重新触发Cloud Build构建部署,或者在Cloud Run控制台重新部署当前镜像,新的修订会自动加载最新权限配置,重启后即可正常访问Firestore

额外说明

无需在代码或镜像中嵌入服务账号密钥,Google Cloud官方SDK会自动识别Cloud Run运行环境的服务账号凭证,该方式安全性更高。

内容的提问来源于stack exchange,提问作者paulcobzaru

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:57:00