Chrome chromium中是否有禁用子资源完整性检查的标志?

xtfmy6hx  于 2023-02-27  发布在  Go
关注(0)|答案(1)|浏览(136)

bounty将在4天后过期。回答此问题可获得+50声望奖励。Benjamin Gruenbaum希望引起更多人对此问题的关注:我希望更多的关注这一点,并知道是否有一个规范/良好的变通办法。特别是除了重写HTML太多

我们使用puppeteer,有时使用playwright来运行一些集成测试,我们模拟了一些目标页面的脚本依赖项,这会导致subresource integrity哈希不匹配。
无法在资源“http://localhost:3000/static/third-party/adobe-target/at-js/2.4.0-cname/at.js”的“integrity”属性中找到具有计算的SHA-256完整性“47 DEQpj 8HBSa +/TImW+5 JCeuQeRkm 5 NMpJWZG 3 hSuFU =”的有效摘要。该资源已被阻止。”
有没有办法通过标志或配置属性禁用完整性哈希检查?

rryofs0p

rryofs0p1#

不,我认为唯一的方法是从加载脚本的源代码中修复或删除integrity属性。
看看这些 chrome (或 Flink )源unless the integrity attribute is emptyFetchManager::Loader将示例化SRIVerifier,其构造函数调用其OnStateChange方法,其中对于响应类型basiccorsdefault(省去opaque响应和错误),则调用SubresourceIntegrity::CheckSubresourceIntegrityUnless the parsing of the integrity attribute failsSubresourceIntegrity::CheckSubresourceIntegrityImpl将或者成功地验证摘要之一,否则将失败并显示给定的错误消息。此路径沿着没有选中可覆盖失败检查的配置选项。

相关问题