工程開發
ck:better-auth avatar

ck:better-auth

使用 Better Auth 實作完整的 TypeScript 身份驗證與授權,支援 OAuth、2FA、密鑰 (Passkeys)、會話管理及多租戶功能。

簡介

Better Auth 是一個專為現代 TypeScript 應用程式設計的綜合性身份驗證與授權框架,不限於特定前端框架。它提供了一個模組化且安全的基礎,用於管理用戶生命週期,讓開發者能夠快速將強大的安全功能整合到 Next.js、Nuxt、SvelteKit、Remix、Astro、Hono 或 Express 等專案中。此技能簡化了身份管理的複雜性,使團隊能專注於核心產品功能,同時處理憑證管理、會話持久化及安全性合規問題。

  • 完整支援傳統 Email/密碼身份驗證,包含內建的信箱驗證與密碼重設流程。

  • 廣泛的社交登入整合,包含 GitHub、Google 及其他 OAuth 2.0 服務。

  • 進階安全功能,包括雙重身份驗證 (2FA/TOTP)、WebAuthn 密鑰 (Passkeys) 及 Magic Link 登入。

  • 內建會話管理,提供持久化追蹤與自動化的令牌處理。

  • 支援多租戶組織架構,非常適合作為需要基於團隊權限控制的 SaaS 平台。

  • 提供基於角色的存取控制 (RBAC) 與可配置的速率限制,以保護 API 端點免受暴力破解與濫用。

  • 可擴展的插件架構,允許將自訂商業邏輯注入身份驗證生命週期中。

  • 前置需求:具備 TypeScript 環境並連線至後端資料庫 (例如 PostgreSQL, MySQL, SQLite 或 Turso),以及對所選框架 API 路由的基本理解。

  • 實作方式:需要配置環境變數,將 API 處理器掛載至框架的路由結構中,並透過 Better Auth CLI 產生資料庫結構。

  • 輸入/輸出:處理用戶憑證與 OAuth 令牌,產生安全的會話 Cookie 或 JWT。客戶端函式庫為前端狀態管理提供響應式 Hook。

  • 營運限制:確保 BETTER_AUTH_SECRET 安全儲存在環境變數中;務必在生產環境部署前啟用速率限制並遷移資料庫結構,以確保系統的一致性與安全性。

倉庫統計

Star 數
2
Fork 數
0
Open Issue 數
0
主要語言
Python
預設分支
main
同步狀態
閒置
最近同步時間
2026年5月3日 上午02:15
在 GitHub 查看