SuperAPI AI 工具集

nextjs-authentication

编程与开发

查看项目

更新于 10-15 22:13

技能介绍

用途:为 Next.js 应用实现安全的认证、令牌存储与会话管理,属关键优先级(P0)。

主要能力与要求: 令牌存储:严格使用 HttpOnly、Secure 且 SameSite 为 Lax 或 Strict 的 Cookie,设置合理的 maxAge(如 86400)。禁止使用 localStorage 或 sessionStorage 存放访问令牌,理由是其易受 XSS 攻击,且 localStorage 会在 Server Components 中引发 hydration 问题。 访问管理:在 Next.js 中间件(middleware.ts)中读取并校验令牌,用于边缘侧重定向与路由保护。 Next.js 15+ 异步:来自 next/headers 的 cookies() 为 Promise,必须 await。 库选择:社交登录与会话管理优先使用 next-auth(Auth.js)或 Clerk。 数据访问:始终通过 DAL(数据访问层)校验凭据,并在渲染前确认 Cookie 是否存在。 CSRF 防护:对所有 Server Actions 和 Route Handlers 校验 Origin/Referer 头进行保护。 用户校验:在 Server Components 中使用 await auth()(Auth.js)或自定义 getSession() 辅助函数。

反模式:不要用 localStorage 存令牌;不要在 Client Components 中传递原始令牌,而应传递会话状态;不要暴露未受保护的 Server Actions。

限制:资料未提供具体的平台支持范围、收费方式或完整可用性说明。