---

title: CSP导航与表单提交治理(navigate-to/form-action)最佳实践

keywords:

  • CSP
  • navigate-to
  • form-action
  • 外跳治理
  • 白名单

description: 通过CSP的navigate-to与form-action策略白名单化外跳与表单提交目标,阻断恶意重定向与外域数据泄露。

categories:

  • 文章资讯
  • 编程技术

---

背景与价值

导航与表单提交是常见外跳路径。CSP的navigate-to/form-action可白名单化目标并阻断恶意外跳。

统一规范

  • navigate-to:限制外跳目标域,默认仅允许同源。
  • form-action:限制表单提交目标域,默认同源或受控外域。
  • 协同治理:结合开放重定向与短链签名策略。

核心实现

头设置

type Res = { setHeader: (k: string, v: string) => void }

function setCspNav(res: Res, navAllow = "'self'", formAllow = "'self'") {
  const v = `navigate-to ${navAllow}; form-action ${formAllow}`
  res.setHeader('Content-Security-Policy', v)
}

落地建议

  • 外跳与表单提交默认同源,必要外域入白名单并审计。
  • 与开放重定向治理协同,确保端到端一致的外跳控制。

验证清单

  • 是否按白名单下发 navigate-to/form-action;外跳与提交是否被非白名单阻断。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部