内容安全策略:页面的设置阻止了内联资源的加载(“script-src”)

Content Security Policy: The page’s settings blocked the loading of a resource at inline (“script-src”)

我已经使用 lambda@Edge + aws cognito 配置了 s3 静态网站 + CloudFront。 当我在使用 cognito 进行身份验证后打开 Cloudfront URL 时,它显示上述错误,由于安全问题无法加载页面。

回购:https://github.com/qoomon/aws-s3-bucket-browser

Link 参考:https://medium.com/@saurishkar/setting-up-aws-http-authentication-on-cloudfront-s3-using-cognito-and-lambda-edge-166ee38d471e

在 HTML 的下方添加了行,但仍然给出错误。

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' * ">

错误:内容安全策略:页面的设置阻止了内联资源的加载(“script-src”)

Error Screenshot

感谢任何帮助。

CSP 可以用 HTTP headers 和 HTML <meta> 标签表示,但 HTTP headers 胜过 <meta> 标签。

如果您使用 <meta> 标签添加 一个 CSP,但之前有与 CSP 相关的错误消息,那么您没有做任何有用的事情,因为现有的 HTTP headers 将覆盖 <meta> 标签。

再次删除 <meta> 标签。然后更改 HTTP headers.