【发布时间】:2017-05-17 19:06:24
【问题描述】:
对于 CDN 上包含的 .css 文件所包含的资源,如何使用 SRI。
例如,如果您将其包含在 HTML 中:
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" crossorigin="anonymous">
这将加载通过 CSS 包含的字体,例如 url('../fonts/fontawesome-webfont.woff2?v=4.7.0') 当然,这些字体可能会被篡改,以利用一些不为人知的浏览器漏洞,因此强制对它们进行哈希检查也是有意义的。
如何告诉浏览器对通过.css 加载的fontawesome-webfont.* 文件执行SRI 哈希?
注意:看起来子子资源哈希是not yet supported,虽然我不确定这是不是最新的。
【问题讨论】:
-
请注意,字体 CDN 可能会故意改变 CSS 和字体以防止分配静态哈希:github.com/google/fonts/issues/473
标签: html css fonts subresource-integrity