SuperAPI AI 工具集

nestjs-authentication

安全与审计

查看项目

更新于 10-16 05:46

技能介绍

用途:在 NestJS TypeScript 后端中设计、实现或重构认证与授权,包括登录、注册、登出、JWT 访问令牌(可选刷新令牌)、守卫、装饰器、策略、基于角色(RBAC)与权限/声明的访问控制,以及将认证接入控制器、服务和其他模块。不适用于项目脚手架、非 NestJS 框架,以及实体与迁移等底层数据库/ORM 工作。

主要能力:默认偏好无状态 JWT 访问令牌,可选刷新令牌;使用 @nestjs/passport 与 passport-jwt 策略;密码用 bcrypt 或 argon2 哈希;通过自定义装饰器和守卫实现角色访问。建议模块结构为 src/modules/auth/ 下含 auth.module.ts、auth.service.ts、auth.controller.ts、strategies/、guards/、dto/、decorators/。

使用方式:先确认或创建 AuthModule,用 ConfigModule 管理 JWT_ACCESS_SECRET、JWT_ACCESS_EXPIRES_IN、JWT_REFRESH_SECRET、JWT_REFRESH_EXPIRES_IN 等环境变量;AuthService 负责校验凭据、签发与刷新令牌;实现 JwtStrategy、JwtAuthGuard、Roles 装饰器与 RolesGuard;在 AuthController 暴露 login 等端点;在其他模块控制器上用 @UseGuards(JwtAuthGuard, RolesGuard) 与 @Roles 保护路由。若存在 CLAUDE.md,应遵循其中关于认证风格、OAuth 提供方与密码存储的偏好。

适用场景:为 NestJS API 添加认证、创建登录/注册/登出端点、用 JWT 保护路由、实现管理员/用户角色访问、添加刷新令牌、重构混乱的认证模块。

限制:不处理项目创建、非 NestJS 框架、底层数据库/ORM 实体与迁移;OAuth/OIDC 仅提供高层模式而非特定 SDK;会话认证、API 网关与微服务集成等高级主题仅在项目明确需要时应用。具体收费、价格与平台信息暂未提供。