SuperAPI AI 工具集

grey-haven-authentication-patterns

安全与审计

查看项目

更新于 10-15 21:55

技能介绍

用途:为 TanStack Start 项目提供 Grey Haven 风格的认证实现模式,重点支持多租户场景,基于 better-auth 构建。

主要能力:覆盖邮箱密码注册登录(需邮箱验证)、魔法链接、OAuth 提供商(如 Google)、Passkey(WebAuthn)注册与认证;会话管理支持 Redis(Upstash)存储、JWT 声明中携带 tenant_id、Cookie 缓存与过期刷新;并提供受保护路由的 beforeLoad 校验方式。

技术栈:better-auth、Drizzle ORM、Doppler 密钥管理、Redis(Upstash)、PostgreSQL(含 RLS)。

关键要求:users 与 sessions 表必须包含 tenant_id;认证密钥通过 Doppler 运行时注入,禁止提交;OAuth 密钥同样存入 Doppler;为 users 和 sessions 表创建 RLS 策略;会话默认 7 天过期、每日刷新;魔法链接 15 分钟过期且单次使用。

使用方式:在 lib/server/auth.ts 中用 betterAuth 配置 drizzleAdapter、emailAndPassword、secret、baseURL、trustedOrigins,并按需启用 socialProviders、passkey、session 等选项;受保护路由在 beforeLoad 中调用 getTenantFromSession,未认证则重定向到登录页。

适用场景:实现用户认证、添加 OAuth、配置魔法链接或 Passkey、管理会话、多租户认证、保护 API 与路由。

限制:资料未提供具体版本号、性能数据、收费信息或完整部署步骤;示例代码为模式参考,实际使用需结合项目环境调整。