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

ID.me 对接Firebase OIDC身份验证失败求助

ID.me 对接Firebase OIDC身份验证失败求助

先贴出你当前使用的代码:

protected async onOAuthProviderClick() {
  const provider = new OAuthProvider('oidc.idme');
  provider.addScope('openid');
  try {
    await signInWithRedirect(getAuth(), provider);
  } catch (error) {
    if (error instanceof FirebaseError) {
      this.#snacks.open(`Error signing in with ID.me: ${error.message}`);
    } else {
      this.#snacks.open(
        'An unknown error occurred while signing in with ID.me'
      );
    }
    if (isDevMode()) console.error(error);
  }
}

看起来你在Firebase里配置ID.me的OIDC登录时碰到了卡壳的客户端认证问题,我来帮你梳理几个针对性的排查方向,结合你提到的沙箱环境和错误信息来分析:

先复盘下你已经做的操作,确保没遗漏关键细节:

  • 在Firebase控制台创建了OIDC提供商,反复核对了Client ID和Client Secret
  • 已经把Firebase的回调URL添加到ID.me沙箱应用的重定向URI列表里
  • 尝试过多种Scope组合:openid、login、profile的不同搭配
  • 目前卡在ID.me沙箱的授权页面,收到错误:Client authentication failed due to unknown client, no client authentication included, or unsupported authentication information

核心排查方向(按优先级排序)

  1. 优先匹配客户端认证方式
    ID.me的OIDC服务对客户端认证方式有明确要求,Firebase默认的OIDC配置可能用的是client_secret_basic,但沙箱环境下ID.me可能要求用client_secret_post或者其他方式。你需要:

    • 确认ID.me沙箱支持的客户端认证方法
    • 回到Firebase控制台的OIDC提供商配置页,找到客户端认证方法选项,设置成和ID.me沙箱要求一致的方式
  2. 抠细节核对基础配置

    • Issuer URL必须是ID.me沙箱的正确地址:https://api.idmelabs.com,检查有没有拼写错误,比如多打了斜杠或者字符
    • 别嫌麻烦,手动输入一遍Client ID和Client Secret,避免复制粘贴时带了空格、换行这类隐形字符
    • 确保Firebase的重定向URI和ID.me沙箱里配置的完全一致,包括大小写、末尾是否带斜杠,比如Firebase生成的回调URL一般是https://<你的项目ID>.firebaseapp.com/__/auth/handler,要原封不动复制过去
  3. 先解决认证问题,再调Scope
    从错误信息来看,现在的问题还停留在客户端身份验证阶段,还没到请求Scope的环节,所以先把认证问题解决,等能正常进入授权页面后再调整Scope。不过可以提前确认ID.me沙箱支持的Scope列表,确保后续请求的Scope是合法的。

  4. 用Firebase工具辅助排查
    打开Firebase控制台的认证日志,查看是否有更详细的请求日志,比如客户端ID是否正确传递给了ID.me;也可以用Firebase的认证模拟器在本地测试OIDC流程,看看能不能复现问题并获取更多调试信息。

希望这些方向能帮你解决问题,顺利在沙箱环境里跑通ID.me的登录流程!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 14:27:57