SuperAPI AI 工具集

supabase-auth

安全与审计

查看项目

更新于 10-16 05:05

技能介绍

用途:在 Next.js 应用中接入 Supabase 认证,支持服务端渲染(SSR),使用基于 Cookie 的会话并自动刷新,避免自行实现认证体系。

主要能力:提供浏览器客户端与服务端客户端两种创建方式;邮箱/密码登录与注册;注册时写入 display_name 等用户元数据;邮箱确认回调路由通过 exchangeCodeForSession 换取会话;useUser Hook 订阅 onAuthStateChange 并读取 user_profiles 资料;数据库迁移创建 user_profiles 表、注册触发器与行级安全(RLS)策略。

使用方式:安装并配置 @supabase/ssr,设置 NEXT_PUBLIC_SUPABASE_URL 与 NEXT_PUBLIC_SUPABASE_ANON_KEY;浏览器端用 createBrowserClient,服务端用 createServerClient 并传入 cookies 的 getAll/setAll;登录页调用 supabase.auth.signInWithPassword,注册页调用 supabase.auth.signUp 并设置 emailRedirectTo;回调路由处理 code 参数;登录成功后调用 router.refresh()。

适用场景:需要认证但不想自建、使用 Next.js SSR、需要邮箱密码及社交登录选项、需要会话自动刷新的项目。

限制与注意:服务端组件中不要使用浏览器客户端;需在中间件中刷新会话;用户数据表必须启用 RLS;需处理邮箱确认流程(identities 为空表示邮箱已注册);登录后需调用 router.refresh()。资料未提供具体安装命令、收费与价格信息。