SuperAPI AI 工具集

lucia-auth

安全与审计

查看项目

更新于 10-15 16:48

技能介绍

用途:该技能用于在浏览器 Web 应用中加入安全、面向生产环境的认证系统,而非仅做登录示例。默认交付可上线的认证基线。

主要能力:默认基线包括邮箱密码注册、登录、登出;服务端会话存储于 HttpOnly、Secure、SameSite Cookie;邮箱验证与重发;密码重置;所有认证与发信端点的限流;状态变更路由的 CSRF 或严格 Origin 校验;密码修改、邮箱验证或变更、权限变更时使会话失效;敏感操作(改密码或邮箱、删号、关闭 MFA、查看 API Key)需重认证;安全的重定向防开放跳转。可按需叠加 OAuth、TOTP 或 WebAuthn。普通 Web 应用默认不用 localStorage 存 JWT,优先服务端会话。

使用方式:先检查仓库已有认证、用户、邮件、会话、中间件与数据库模式,确定认证范围,再建或更新 user、session、email_verification、password_reset 等表结构,接着实现密码哈希、会话签发校验、CSRF、限流、令牌生成与跳转校验等安全原语,然后串联完整用户流程并加入敏感操作重认证,最后验证 Cookie 标志、限流、失效行为与异常路径。技能要求先阅读 references 下的 Copenhagen Book 与 Lucia 参考文档;OAuth、MFA、WebAuthn 等按需查阅对应文档。可参考 assets 中的模板(如 password-utils.ts、session-manager.ts、session-schema.sql、email-verification.ts、password-reset.ts、oauth-handler.ts、csrf-protection.ts、rate-limit.ts、totp-mfa.ts),并按仓库框架与 ORM 调整。

安全规则要点:密码用 Argon2id,Scrypt 可作回退,bcrypt 仅限遗留;最小长度 8;不静默截断;邮箱存前转小写;登录时新建会话,存会话密钥哈希而非原文;默认 Cookie 为 HttpOnly、Secure、Path=/、SameSite=Lax;不用 GET 改状态;OAuth 用授权码加 PKCE 并校验 state 与 code verifier;验证与重置令牌高熵、存 SHA-256 哈希、一次性且自动过期;发信端点严格限流。

限制:资料未提供具体安装命令、依赖版本、费用、平台或性能数据;需用户补充框架、ORM 及提供商配置,并在本地验证基础上做集成测试。