本技能是 Firebase Authentication 的实现指南,覆盖 Google 生态集成、社交身份提供方、手机号认证、匿名认证、自定义声明与安全规则集成。
用途:适合需要 Google 生态集成、移动优先应用、无服务器 Cloud Functions、匿名访客访问,或已有 Firebase 基础设施的认证场景。
主要能力:Google Sign-In 与 Cloud Identity 原生集成;支持 Facebook、Twitter/X、GitHub、Apple、Microsoft、Yahoo 等社交提供方;基于短信的手机号验证;匿名访客访问并支持账号链接升级;自定义声明实现基于角色的访问与管理员权限;与 Firestore、Storage、Realtime Database 的安全规则集成。平台 SDK 包括 Web 的 firebase/auth(模块化 SDK 9 及以上)、iOS 的 FirebaseAuth(Swift/SwiftUI)、Android 的 firebase-auth(Kotlin)、Flutter 的 firebase_auth 包、React Native 的 @react-native-firebase/auth。
使用方式:先通过 resolve-library-id 传 "firebase" 获取 Context7 库 ID,再用 get-library-docs 配合主题 "authentication" 查询最新 API。初始化时,Web 从 firebase/app 导入 initializeApp、从 firebase/auth 导入 getAuth 与 onAuthStateChanged,创建含 apiKey、authDomain、projectId 的 firebaseConfig 并调用 initializeApp 与 getAuth,用 onAuthStateChanged 监听登录状态;Flutter 导入 firebase_core 与 firebase_auth,在 main 中初始化绑定并 await Firebase.initializeApp(),再用 FirebaseAuth.instance.authStateChanges().listen() 监听。匿名登录使用 signInAnonymously,升级时用 EmailAuthProvider.credential 与 linkWithCredential。会话持久化使用 setPersistence 配合 browserLocalPersistence 或 browserSessionPersistence。安全规则采用 rules_version 2,Firestore 按 request.auth.uid 匹配 userId,管理员用 request.auth.token.admin;Storage 按同样方式控制用户路径。
详细实现按渐进式模块展开:modules/social-auth.md 覆盖社交登录,modules/phone-auth.md 覆盖手机号认证(含 RecaptchaVerifier、E.164 格式、速率限制),modules/custom-claims.md 覆盖自定义声明与 RBAC;reference.md 涉及 MFA、会话 Cookie、Cloud Functions 触发器与 Admin SDK,examples.md 提供完整示例、React Hooks 与 Flutter Provider。
限制:仅覆盖 Firebase Authentication,未提供价格、收费或效果数据。