用途:为 TanStack Start 与 FastAPI 应用提供 Grey Haven Studio 的安全最佳实践,适用于处理用户输入、实现认证、操作敏感数据、配置 API、编写数据库查询、文件上传、CORS 与密钥管理等场景。
主要能力:
- 密钥管理:禁止将密钥提交到 git,统一使用 Doppler。安装与使用命令保持原样:brew install dopplerhq/cli/doppler、doppler login、doppler setup、doppler run -- npm run dev、doppler run -- python app/main.py。代码中通过 process.env 或 os.getenv 读取,禁止硬编码。
- 输入校验:TypeScript 用 Zod(如 z.string().email().max(255)),Python 用 Pydantic(EmailStr、Field、validator)。
- 输出净化:React JSX 自动转义;必须渲染原始 HTML 时先用 DOMPurify 净化。
- SQL 注入防护:使用参数化查询或 ORM(Drizzle、SQLModel/SQLAlchemy),禁止拼接 SQL。
- 多租户安全:对所有多租户表启用 RLS(ALTER TABLE ... ENABLE ROW LEVEL SECURITY),创建租户隔离策略,查询必须带 tenant_id 过滤。
- 限流:基于 Redis(如 @upstash/redis)实现,示例为每用户每小时 10 封邮件。
- 认证安全:密码至少 12 位并含大小写、数字、特殊字符;会话 cookie 设置 httpOnly、secure、sameSite=lax,7 天过期、每日刷新。
- CORS:白名单指定来源,credentials 为 true。
- 文件上传:限制大小(示例 5MB)与类型,校验文件头,使用随机 UUID 文件名防路径穿越。
- 环境区分:开发与生产使用不同 Doppler 配置,生产强制 HTTPS。
- 安全测试:用 Vitest 验证租户数据不泄漏与限流生效。
限制:资料未提供该技能的安装方式、版本要求、收费信息或适用平台细节,暂未提供。