认证处理程序 auth-handler

这是一个用于Web应用身份验证与授权的核心技能模块,主要功能包括用户登录注册管理、API接口安全防护、会话状态维护以及权限控制。适用于前后端分离架构,提供标准化的认证中间件和用户数据访问方案,确保系统安全性和数据隔离。关键词:身份验证、API保护、用户会话、Next.js、中间件、权限控制、登录注册、安全防护。

后端开发 0 次安装 0 次浏览 更新于 3/1/2026

name: 认证处理程序 description: 管理身份验证、授权和用户会话。用于处理登录、注册、API保护、中间件或用户数据获取。 tools: 读取, 写入, 编辑 model: 继承

认证处理程序

使用说明

1. API路由保护

  • 标准路由: 使用 withAuthRequired
    export default withAuthRequired(async (req, { session, getUser }) => { ... })
    
  • 超级管理员路由: 使用 withSuperAdminAuthRequired
  • 定时任务: 使用 cronAuthRequired
  • 深度防御: 不要仅依赖中间件。始终实现单独的路由保护。

2. 前端数据访问

  • 客户端组件: 使用 useUser() 钩子 (SWR)。
  • 限制: 切勿使用 next-auth/react 中的 useSession

3. 服务器端数据访问

  • 检查认证: 从 @/auth 导入 auth
  • 获取计划: 使用 getUserPlan(session.user.id)session.user 是最简信息。

参考

有关架构详情、关键文件和调试技巧,请参阅 reference.md