fastapi-auth
在 FastAPI 中实现安全的 Session 认证,包含 Argon2 哈希、数据库会话管理及 OAuth2 供应商整合。
简介
此技能为 FastAPI 应用程序提供了一种强大的身份验证架构模式,专为需要会话持久性和 OAuth2 集成的系统所设计。它采用清晰的三层架构,将数据访问(Repository)、业务逻辑(Service)与请求处理(Router)分离。通过使用 Argon2 进行安全密码哈希,以及使用 SQLAlchemy 进行数据库会话管理,此技能确保用户凭证与活跃会话皆以业界标准的安全性处理。它适合需要结构化登录、注册及路由保护机制的后端工程师使用。
-
使用 Argon2 密码哈希技术,确保凭证的高度安全与可验证性。
-
提供模块化的 OAuth2 回调架构,目前支持 Google OAuth 流程,便于快速进行用户注册与登录。
-
内置专属的 Session Repository 与 Service,用于管理 PostgreSQL 中的 Token 持久化。
-
通过 HTTPExceptionMixin 实现自定义异常处理,统一 API 的 401 及认证相关错误响应格式。
-
采用 Pydantic Schema 进行严格的输入验证,涵盖 OAuth 回调与用户会话响应。
-
实现依赖注入机制以进行身份验证防护,实现端点级别的 HTTPBearer Token 访问控制。
-
当您需要为平台架构后端系统,并要求用户账号管理、会话状态追踪及第三方身份提供商集成时,请使用此技能。
-
系统预期接收用户凭证(直接登录)或 OAuth2 回调参数(第三方认证),并输出包含过期信息的 SessionResponse 对象。
-
部署 Auth 服务前,请确保已正确配置 OAuth 凭证相关的环境变量(如 GOOGLE_CLIENT_ID 等)。
-
本服务具备高度可扩展性,您可以透过扩充 AuthService 中的供应商字典,轻松新增其他 OAuth 提供商。
-
所有数据库交互均为异步处理,需搭配异步的 SQLAlchemy 设置以维持系统性能。
仓库统计
- Star 数
- 3
- Fork 数
- 0
- Open Issue 数
- 11
- 主要语言
- TypeScript
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 19:41