默认安全(转译)

  • 更新于 30 5月 2024

本主题的默认配置在 Mozilla Observatory[1] 上获得了 A+评分。

这是通过在 config.toml 文件中基于用户定义的允许域名列表以编程方式配置内容安全策略(CSP)头部来实现的。以下是默认和建议的设置(如果你不想嵌入 YouTube 视频,可以删除最后一个指令):

[extra]
allowed_domains = [
    { directive = "font-src", domains = ["'self'", "data:"] },
    { directive = "img-src", domains = ["'self'", "https://*", "data:"] },
    { directive = "script-src", domains = ["'self'"] },
    { directive = "style-src", domains = ["'self'"] },
    { directive = "frame-src", domains = ["https://www.youtube-nocookie.com"] },
]

allowed_domains 列表指定了网站应能够连接的 URL,列表中的每个域名都与 CSP 指令相关联,如 frame-srcconnect-srcscript-srctemplates/partials/header.html文件根据此列表动态生成 CSP 头部。

此功能允许您轻松自定义网站的安全头部,以支持特定用例,例如嵌入 YouTube 视频,加载脚本或远程字体(不推荐)。

您可以通过在页面前置元数据中设置 enable_csp = false 或者在 config.toml文件中全局设置,来禁用 CSP(允许所有连接),可以在页面、章节或全局范围内禁用。

注意:


  1. 需要适当的网页服务器配置(例如,将 HTTP 流量重定向到 HTTPS)。