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

修改iOS应用名称后Firebase AppCheck出现PERMISSION_DENIED问题求助

App Attest 403 "App attestation failed" 错误排查

App Attest维持有效性的核心依赖要素

App Attest的验证逻辑仅绑定以下几个关键要素,修改应用显示名称、Firebase项目显示名称本身不会影响验证:

  • Bundle ID(应用标识符):iOS应用的唯一身份标识,App Attest设备密钥、Firebase App Check配置均基于此值绑定
  • 应用签名证书/Provisioning Profile:验证过程会校验应用签名合法性,只要证书和Profile未变更就不会影响
  • Firebase项目ID:Firebase服务的唯一标识,所有App Check配置都关联到该ID
  • App Attest服务启用状态:Firebase控制台中是否为该应用启用了App Attest提供者

你可能遗漏的配置/操作

结合你修改应用名称、Firebase项目名称的操作,按优先级排查:

  1. 检查Firebase控制台App Check配置

    • 进入Firebase控制台 → 目标项目 → App Check → 找到对应iOS应用
    • 确认应用Bundle ID与Xcode中完全一致,同时检查App Attest提供者状态为「启用」
    • 可尝试重新保存一次App Check配置(如修改描述后改回),触发后台配置同步
  2. 清理Xcode构建缓存并重新构建

    • 执行Command+Shift+K清理项目,删除Derived Data(Xcode → 设置 → 位置 → Derived Data → 打开路径后删除对应文件夹)
    • 重新下载Provisioning Profile(Xcode → 签名与功能 → 点击「下载手动配置文件」)
    • 重新构建应用,避免旧缓存的App Attest令牌、签名信息干扰验证
  3. 重新生成Debug环境App Attest令牌

    • 若Debug环境报错,修改Target名称后Xcode调试签名可能出现临时变化,需重新获取调试令牌并添加到Firebase控制台的App Check配置中
  4. 验证App Attest初始化代码

    • 检查代码中是否硬编码了旧应用名称、Target名称(如初始化AppCheck时错误传入旧名称)
    • 确认AppCheck基于FirebaseApp默认实例初始化,未修改Bundle ID相关配置
  5. 检查Firebase项目服务状态

    • 进入Firebase控制台 → 目标项目 → 项目设置 → 确认App Attest服务未被意外禁用
    • 检查项目计费状态(若为付费项目),确保无欠费导致服务受限

错误日志:

"error": {
  "code": 403,
  "message": "App attestation failed.",
  "status": "PERMISSION_DENIED"
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 04:45:15