概述在 HTTPS 页面中加载 HTTP 资源属混合内容,存在劫持与隐私风险。CSP 提供两种相关指令:`upgrade-insecure-requests` 将不安全 URL 升级为 HTTPS;`block-all-mixed-content` 禁止加载任何 HTTP 资源。两者应择其一,避免重复配置。指令行为`upgrade-insecure-requests`:将站内不安全 URL 视为已替换为 HTTPS,适用于存在历史 HTTP 资源、需要渐进迁移的场景;建议与 `default-src https:` 搭配,并结合 Report-Only 收集问题[参考3,4]。`block-all-mixed-content`:在 HTTPS 页面中禁止任何 HTTP 资源,包括 iframe 内文档;若前者已成功升级,则此指令不再生效;通常无需同时设置两者[参考1,2,5]。与 HSTS 的关系两者不替代 HSTS;HSTS 强制顶级导航使用 HTTPS,并抵御 SSL 剥离;建议配合 `Strict-Transport-Security` 长期启用[参考3]。迁移与灰度先使用 Report-Only 搭配 `upgrade-insecure-requests` 与 `default-src https:` 收集问题,再转为强制;对无法升级的第三方资源改用安全替代或隔离加载。参考与验证[参考1]MDN 中文:`block-all-mixed-content` 指令说明与适用范围:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Reference/Headers/Content-Security-Policy/block-all-mixed-content[参考2]MDN 教程:`block-all-mixed-content` 与 `upgrade-insecure-requests` 的评估顺序与互斥说明:https://s0developer0mozilla0org.icopy.site/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/block-all-mixed-content[参考3]MDN 英文:`upgrade-insecure-requests` 指令与 HSTS 的关系与报告策略示例:https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/upgrade-insecure-requests[参考4]MDN 中文:`upgrade-insecure-requests` 策略搭配 Report-Only 示例:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Reference/Headers/Content-Security-Policy/upgrade-insecure-requests[参考5]MDN 英文:`block-all-mixed-content` 指令说明与现状(可选阻止内容已升级):https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Security-Policy/block-all-mixed-content关键词校验关键词聚焦混合内容与两类指令,与正文一致。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部