将取消打包添加到内容安全策略(CSP)



如何将通过Unpackg获取的特定库(ES模块(添加到我的内容安全策略(CSP(策略中,即不允许所有来自Unpackg的内容?

例如,这就是我添加提供一个库的方式:

<script
type="module"
src="https://unpkg.com/web-social-share@latest/dist/websocialshare/websocialshare.esm.js"></script>

我为我的script-src策略尝试了各种解决方案,如https://unpkg.com/web-social-share@latest/*https://unpkg.com/web-social-share@*,但都导致了一个错误:

拒绝加载脚本'https://unpkg.com/web-social-share@最新的/dist/websocialshare/websocicalshare.esm.js,因为它违反了以下内容安全策略指令:;脚本src"self"。。。

任何似乎有效的东西都允许Unpack中的所有内容,而我希望避免这些内容。

<meta
http-equiv="Content-Security-Policy"
content="default-src 'self';
script-src 'self' https://unpkg.com/;" />

这仅在CSP级别3中可用:https://www.w3.org/TR/CSP3/#external-散列。但不幸的是,您仍然需要支持级别2。但是,您可以在大多数浏览器中使用子资源完整性。

最新更新