【问题标题】:What CSP is safer - style-src 'none' or style-src 'unsafe-inline'什么 CSP 更安全 - style-src 'none' 或 style-src 'unsafe-inline'
【发布时间】:2020-10-12 20:50:08
【问题描述】:

我很难完全理解style-src 'none'。从命名上看,这听起来像是限制性的,还是意味着没有规则,你可以为所欲为?

script-src 'none' 在不太可能的情况下会出现同样的问题,但它的行为会有所不同。

旁注 - 如果您使用库 styled-components 最好的 CSP 是什么(所有内容都与该库内联注入)?

编辑:

之前我已经阅读过 mdn 对none 的描述。

'none'
Refers to the empty set; that is, no URLs match. The single quotes are required.

这是什么意思?这是否意味着它不会阻止样式/脚本或相反?

【问题讨论】:

  • 如果您还没有去过那里,那么Content Security Policy 的第一站可能应该是 MDN:developer.mozilla.org/en-US/docs/Web/HTTP/CSPstyle-src 适用于 CSS,script-src 适用于脚本 .. 和 default-src 适用于两者。 “最佳 CSP”完全取决于 a) 您想要完成的任务,平衡 b) 您选择支持的浏览器、第 3 方库等所隐含的限制。
  • @paulsm4 我更新了这个问题,特别提到了 mdn。我的问题是我没有发现“无”的描述清楚地说明了它的影响。
  • 注意“unsafe-inline”中的“unsafe”一词。它不是为了微妙! ;-)

标签: html security header styled-components content-security-policy


【解决方案1】:

'none' 的策略来源是 MOST 限制性的;这意味着 NO 个主机是有效的。

来自我上面引用的链接:

https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP

让我们考虑一个位于http://example.com/signup.html 的页面。它 使用以下策略,禁止除样式表之外的所有内容 cdn.example.com.

Content-Security-Policy: default-src 'none'; style-src cdn.example.com; report-uri /_/csp-reports

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-19
    • 2022-11-22
    • 2021-02-14
    • 2016-05-04
    • 1970-01-01
    • 2019-01-04
    • 1970-01-01
    • 2022-12-19
    相关资源
    最近更新 更多