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

Flutter中如何从Firebase Auth获取所有已认证用户ID

回答

首先明确结论:Flutter客户端无法直接从Firebase Auth获取全量已认证用户的ID列表,这是Firebase官方的安全设计,客户端SDK未开放对应能力,避免批量用户数据泄露。

如果要实现该需求,必须通过Firebase Admin SDK在可信服务端完成,具体方案如下:

  • 部署Firebase Admin SDK到可信环境,可选Cloud Functions、自有服务器等,只有Admin SDK才提供拉取全量用户的接口
  • 在服务端调用listUsers()方法拉取用户列表,该接口单次最多返回1000条用户数据,用户量超过1000时需要用返回的pageToken参数分页拉取,遍历所有用户记录提取UID即可
  • 给服务端接口添加严格的权限校验,仅允许项目管理员身份调用,绝对不可开放给普通用户,避免全量用户ID泄露带来安全风险
  • Flutter端需要拉取列表时,请求上述加了权限校验的服务端接口,拿到返回的UID列表即可使用

注意:严禁将Admin SDK的密钥或凭证放到Flutter客户端代码中,凭证一旦泄露,攻击者可直接操作你项目的所有Firebase资源,会造成极其严重的安全事故。

如果仅用于本地测试,你也可以在本地运行Admin SDK脚本直接导出全量用户ID,无需额外部署后端接口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 16:54:03