CSP:script-src-attr

HTTP 的 Content-Security-Policy (CSP) script-src-attr 指令指定 JavaScript 内联事件处理程序的有效来源。

此指令仅指定内联脚本事件处理程序(如 onclick)的有效来源。它不适用于其他可能触发脚本执行的 JavaScript 来源,例如直接加载到 <script> 元素和 XSLT 样式表 中的 URL。(可以使用 script-src 为所有 JavaScript 脚本来源指定有效来源,或者仅使用 script-src-elem<script> 元素指定有效来源。)

CSP 版本 3
指令类型 获取指令
default-src 回退 是。如果此指令不存在,用户代理将查找 script-src 指令,如果两者都不存在,则回退到 default-src 指令。

语法

可以为 script-src-attr 策略允许一个或多个来源

http
Content-Security-Policy: script-src-attr <source>;
Content-Security-Policy: script-src-attr <source> <source>;

script-src-attr 可以与 script-src 结合使用,并且会覆盖对内联处理程序检查的该指令。

http
Content-Security-Policy: script-src <source>;
Content-Security-Policy: script-src-attr <source>;

来源

<source> 可以是 CSP 来源值 中列出的任何一个值。

请注意,这组相同的值可用于所有 获取指令(以及 许多其他指令)。

示例

违规情况

给定此 CSP 标头

http
Content-Security-Policy: script-src-attr 'none'

…以下内联事件处理程序将被阻止,并且不会加载或执行

html
<button id="btn" onclick="doSomething()"></button>

请注意,通常应将内联事件处理程序替换为 addEventListener 调用

js
document.getElementById("btn").addEventListener("click", doSomething);

规范

规范
内容安全策略级别 3
# directive-script-src-attr

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅