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>;
來源
示例
違規情況
給定此 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 的瀏覽器中載入。