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

IOS调用Gen 2 Firebase函数报Unauthenticated,找不到roles/run.invoker

解决Firebase Gen2函数部署后Unauthenticated错误的步骤

Firebase Gen2函数底层基于Cloud Run服务,权限规则和Gen1函数完全不同,你之前配置的Cloud Functions Invoker角色对Gen2函数无效,必须改用Cloud Run的Invoker角色:

  • 第一步:确认Cloud Run服务信息
    先找到Gen2函数对应的Cloud Run服务名和部署区域:

    • 执行命令firebase functions:list,Gen2函数的Service列就是对应Cloud Run服务名
    • 或者登录GCP控制台,进入「Cloud Run」页面,找到和函数名关联的服务
  • 第二步:配置Cloud Run Invoker权限
    选以下任意一种方式设置权限:

    1. 命令行方式:
      gcloud run services add-iam-policy-binding [你的Cloud Run服务名] \
        --member="allUsers" \
        --role="roles/run.invoker" \
        --region=[你的函数部署区域]
      
    2. GCP控制台方式:
      • 进入Cloud Run服务详情页,切换到「权限」标签
      • 点击「添加权限」,在「新成员」输入框填allUsers
      • 在「角色」下拉列表选「Cloud Run」->「Cloud Run Invoker」,保存设置
  • 第三步:验证权限生效
    执行命令查看权限配置:

    gcloud run services get-iam-policy [你的Cloud Run服务名] --region=[你的函数部署区域]
    

    确认输出里包含allUsers对应的roles/run.invoker角色即可。

你之前遇到的找不到roles/run.invoker警告,大概率是因为在Cloud Functions页面而非Cloud Run页面配置权限,或者命令里的服务名/区域填错了,切换到Cloud Run的配置入口就能解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 09:37:07