用途:harden 把安全作为每一行触及用户数据、认证或外部系统代码的约束,属于主动式做法,在实现过程中应用而非事后补救;事后扫描由 safe-repo(敏感数据)和 deps-audit(CVE)负责。
需先询问并获人工批准的场景:新增认证流程或修改认证逻辑;存储新类别的敏感数据(PII、支付);新增外部服务集成;修改 CORS 配置;文件上传处理器;限流/节流变更;授予更高权限或角色。
主要能力与做法:在系统边界(路由处理器、消息消费者)而非业务逻辑中校验,用模式校验器(Zod、Joi、pydantic 等)定义契约,在业务逻辑接触数据前以 422 加结构化错误拒绝;信任内部代码,只在边缘校验。资料列举的易忽略默认项包括:按资源(所有权)做授权而非仅认证;会话 cookie 使用 httpOnly + secure + sameSite,认证令牌不放入 localStorage;默认从 API 响应中剥离敏感字段;设置安全响应头(CSP、HSTS、X-Frame-Options、X-Content-Type-Options);认证端点限流;日志与错误响应不含密钥、令牌、PII、堆栈;文件上传允许 MIME 类型白名单、处理前强制最大大小、类型重要时检查魔数、存储在 webroot 之外;出站请求允许目标白名单,绝不未校验就抓取用户提供的 URL(SSRF);CORS 从配置显式来源白名单,认证端点不用通配符;外部集成验证 webhook 签名、每次外部调用设超时、使用前校验第三方响应结构,不用不安全加载器反序列化不可信输入;记录安全事件(认证失败、拒绝访问、输入被拒)但不含载荷;用户原始 HTML 仅经净化器(DOMPurify 或等效物)。
验证:安全相关代码完成后,deps-audit 无严重/高危 CVE(或每项记录复核日期);safe-repo --diff 干净;响应头存在(curl -I);每个受保护端点都检查授权。
限制:资料未提供具体安装方式、命令细节、收费、支持平台或效果数据,暂未提供。