設定內容安全政策

您目前查看的是 Apigee Edge 說明文件。
參閱 Apigee X 說明文件
資訊

在入口網站的所有網頁中設定內容安全政策 (CSP),藉此防範跨網站指令碼 (XSS) 和其他程式碼植入攻擊。CSP 為指令碼、樣式和圖片等內容定義受信任的來源。設定政策後,瀏覽器會封鎖從不受信任的來源載入的內容。

系統會在入口網站的所有頁面中,將 CSP 新增為 Content-Security-Policy HTTP 回應標頭,如下所示:

Content-Security-Policy: policy

這項政策的指令必須如 W3C 網站上內容安全政策指令中定義的指令。

如果啟用 CSP 標頭,系統預設會定義下列 CSP 指令:

default-src 'unsafe-eval' 'unsafe-inline' * data:

default-src 指令會為未設定指令的資源類型設定預設政策。

下表說明預設指令所定義的政策。

政策 存取權
'unsafe-inline' 內嵌資源,例如內嵌 <script> 元素、javascript: 網址、內嵌事件處理常式和內嵌 <style> 元素。注意:政策前後必須加上單引號,
'unsafe-eval' 不安全的動態程式碼評估,例如 JavaScript eval(),以及透過字串建立程式碼的類似方法。注意:政策前後必須加上單引號,
* (wildcard) data:blob:filesystem: 配置以外的任何網址。
data: 透過資料配置載入的資源 (例如 Base64 編碼的圖片)。

以下範例說明如何設定 CSP 來限制特定資源類型。

政策 存取權
default-src 'none' 無法存取沒有已設定指令的資源類型。
img-src * 任何來源的圖片網址。
media-src https://example.com/ 來自 example.com 網域的 HTTPS 影片或音訊網址。
script-src *.example.com example.com 的子網域執行任何指令碼。
style-src 'self' css.example.com 套用網站來源或 css.example.com 網域中的任何樣式。

如何設定內容安全政策:

  1. 依序選取「Publish」(發布) >「Ports」(入口網站),然後選取入口網站。
  2. 在頂端導覽列的下拉式選單中選取「設定」
  3. 或者,您也可以點選入口網站到達網頁中的「設定」
  4. 按一下 [安全性] 標籤。
  5. 按一下「啟用內容安全政策」
  6. 設定 CSP 或保留預設值。
  7. 點按「儲存」

您隨時可以按一下「還原預設值」還原預設的 CSP 政策。