多用户用同一UID生成的Firebase自定义令牌能否同时保持认证?
核心结论
多个用户使用同一UID生成的自定义令牌登录Firebase,所有用户都能正常保持登录状态并访问授权资源,不会出现后续登录撤销之前用户令牌的情况。
原因说明
- Firebase Auth允许为同一UID生成多个有效自定义令牌,这些令牌相互独立,彼此不会导致对方失效。只要令牌在有效期内(默认1小时,可配置),就能正常完成认证。
- 同一UID的多个用户在线时,Firebase Auth会将他们归为同一个用户实体,但每个客户端的会话是完全独立的——各自的ID Token和Refresh Token互不干扰,新用户的登录操作不会影响已登录用户的会话。
你的链接共享场景注意点
- 权限要卡准:所有用户共用同一个UID,必须确保Firestore安全规则严格限制这个UID只能访问对应链接的资源子集,防止越权访问其他数据。
- 令牌过期不用慌:自定义令牌默认1小时过期,客户端会自动用Refresh Token刷新ID Token,这个过程用户无感知,不用重复调用云函数生成令牌。
- 注意并发冲突:如果多个用户同时修改同一资源(比如对应链接的Firestore文档),要提前处理并发写入问题,比如用Firestore的事务或者乐观锁机制。
内容的提问来源于stack exchange,提问作者Patrick Smith
相关产品推荐
相关产品推荐

