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

Flutter集成Firebase微软登录遇invalid-credential错误求助

Flutter Firebase Auth微软登录返回"invalid-credential"问题排查

1. 检查Azure AD应用配置

  • 确认Azure AD应用的重定向URI与Firebase控制台中配置完全一致,Flutter应用的重定向URI格式通常为com.googleusercontent.apps.xxx:/oauth2callback(其中xxx为Firebase项目的客户端ID)
  • 确保Azure AD应用已启用ID令牌:进入Azure门户的应用"认证"页面,在"高级设置"中勾选ID令牌选项
  • 验证API权限:添加User.Read委托权限,并完成管理员同意授予

2. 核对Firebase控制台配置

  • 确认填入的客户端ID是Azure AD应用的"应用(客户端)ID",客户端密钥是Azure AD应用生成的客户端密码(非证书类型)
  • 检查Firebase控制台中Microsoft登录提供商的状态为"已启用",且配置保存生效

3. 代码调整优化

尝试显式指定必要的登录范围,避免默认范围不足导致凭据验证失败:

final microsoftProvider = MicrosoftAuthProvider()
  ..addScope('openid')
  ..addScope('profile')
  ..addScope('email');

Future microsoftSignIn(context) async {
  try {
    final mUser = await FirebaseAuth.instance.signInWithProvider(microsoftProvider);
    print('User: $mUser');
  } catch (e){
    if (e is FirebaseAuthException) {
      print('Firebase Auth Error Code: ${e.code}');
      print('Firebase Auth Error Message: ${e.message}');
    } else {
      print(e.toString());
    }
  }
}

4. 清除缓存与环境测试

  • 卸载应用后重新安装,清除本地Firebase Auth缓存
  • 使用未关联过测试环境的新微软账号进行登录测试,排除旧凭据残留问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 17:32:39