为功能策略HTTP头设置默认值

为功能策略HTTP头设置默认值,http,browser,header,http-headers,content-security-policy,Http,Browser,Header,Http Headers,Content Security Policy,对于HTTP功能策略标题,您可以单独设置中提到的功能。但如何设置默认值 通过设置默认src,您可以为内容安全策略执行此操作,是否有与功能策略等效的功能 这将比单独设置众多功能中的每一项更方便,特别是因为在添加新功能时,您必须使该列表保持最新状态。这里对这个问题进行了积极的讨论: 总结github线程,拥有默认策略的主要问题是,您可能正在使用一个功能,该功能后来会受制于策略。然后你的网站就会崩溃,结果,浏览器供应商要么不提供新功能,要么不愿意让它受制于一项政策,而功能政策作为一个概念将一事无成

对于HTTP
功能策略
标题,您可以单独设置中提到的功能。但如何设置默认值

通过设置
默认src
,您可以为
内容安全策略
执行此操作,是否有与
功能策略
等效的功能


这将比单独设置众多功能中的每一项更方便,特别是因为在添加新功能时,您必须使该列表保持最新状态。

这里对这个问题进行了积极的讨论:

总结github线程,拥有
默认策略的主要问题是,您可能正在使用一个功能,该功能后来会受制于策略。然后你的网站就会崩溃,结果,浏览器供应商要么不提供新功能,要么不愿意让它受制于一项政策,而功能政策作为一个概念将一事无成

有许多可能的解决方案:

  • 使
    default
    不仅引用所有现有的策略,而且还引用可能受策略约束的所有内容,方法是将网络覆盖得非常广。这将禁用几乎所有的DOM、浏览器和网络API。但是看起来你可能想使用一些这样的东西,使得指令变得毫无用处
  • 不要实现
    default
    ,而是添加一些不可变的“bundle”策略。当您采用捆绑包时,您知道它包含什么,这不会改变,但随着新策略的引入,我们可以创建新的更大、更严格的捆绑包,而不会破坏采用以前捆绑包的站点。这是

是的,如果有一种简单的方法将所有功能设置为“无”或“自”,那就太好了。功能策略不提供任何方式来表示这种默认设置。您可能想在描述用例时提交一个问题,这样您就可以让编辑器考虑添加一些东西来规范它。