我们正在尝试将CSP实现到我们的一个站点中,虽然我们知道如何允许或不允许脚本,但我们仍然对nonce / sha *部分感到困惑。我们有外部脚本,例如bootstrap和jquery,它们带有integrity =“sha *”,并且应该避免使用内联脚本或样式。内联的所有内容都应该重构为外部文件。
我们的问题是,我们是否为我们网站中的每个js或css文件创建了一个sha * key / nonce- *(不是外部的),或者只是在内容中的script-src / style-src之后添加'self' - 安全政策是否足够?
感谢您提供任何帮助。
答案 0 :(得分:2)
您不需要链接JavaScript文件的随机数;他们授权内联脚本标签。 “self”(或URL)授权链接文件。您需要做的清理是删除HTML中的“onclick”属性。 SHA哈希用于验证链接文件的完整性。
所以: