背景与价值HSTS可强制HTTPS并阻断降级攻击。预加载与子域覆盖能在浏览器层面进一步增强安全。统一规范时长上限:`max-age` 默认≥31536000且不超过两年。子域覆盖:生产启用 `includeSubDomains`,避免子域降级链路。预加载:满足条件后申请预加载并定期复核。核心实现策略生成与校验type Res = { setHeader: (k: string, v: string) => void } function ttlValid(sec: number): boolean { return Number.isInteger(sec) && sec >= 31536000 && sec <= 63072000 } function domainEligible(host: string): boolean { return /^[a-z0-9.-]+$/.test(host) && !host.startsWith('localhost') } function setHsts(res: Res, host: string, ttlSec = 31536000, includeSub = true, preload = false) { if (!domainEligible(host) || !ttlValid(ttlSec)) return let v = `max-age=${ttlSec}` if (includeSub) v += '; includeSubDomains' if (preload) v += '; preload' res.setHeader('Strict-Transport-Security', v) } 落地建议在全站启用HSTS并覆盖子域,确保长效HTTPS;满足条件后申请预加载。定期验证域名与时长配置,避免过短影响与过长难以撤销。验证清单`max-age` 是否在范围内;是否启用 `includeSubDomains` 与 `preload`。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部