App Engine Flex通过Cloud Run部署时权限拒绝错误求助
解决App Engine Flex部署权限拒绝问题
确认服务账号与角色匹配
确保你是为App Engine Flexible Service Agent专用服务账号(格式为service-<项目编号>@gae-api-prod.google.com.iam.gserviceaccount.com)配置的roles/appengineflex.serviceAgent角色,而非其他普通账号。
补充必要的额外权限
仅依赖基础角色可能不足以覆盖所有部署场景,需为该服务账号补充以下权限对应的预定义角色:
- 计算引擎资源操作:
roles/compute.instanceAdmin.v1(包含实例创建、磁盘管理、网络使用权限) - 容器镜像管理:
roles/containerregistry.ServiceAgent(支持镜像推送拉取) - 云存储资源访问:
roles/storage.objectAdmin(处理部署所需的文件存储操作)
验证权限配置
执行命令确认服务账号的权限已正确生效:
gcloud projects get-iam-policy adobeworkfront-fctn4a --filter="bindings.members:service-<项目编号>@gae-api-prod.google.com.iam.gserviceaccount.com" --format="value(bindings.role)"
将<项目编号>替换为你的实际项目编号,检查输出是否包含上述补充的角色。
重新执行部署
完成权限配置后,重新运行部署命令:
gcloud app deploy
内容的提问来源于stack exchange,提问作者Pavel
相关产品推荐
相关产品推荐

