內容安全性原則 (CSP) 指示

如果您正在使用內容安全性原則 (CSP)進行Adobe Target實作,您應該在使用at.js 2.1或更新版本時新增下列CSP指示:

  • connect-src 並將 *.tt.omtrdc.net 加入允許清單。 允許將網路要求傳送到 Target 邊緣所需。
  • style-src unsafe-inline。 預先隱藏和閃現控制所需。
  • script-src unsafe-inline。允許執行可能是 HTML 選件之一部分的 JavaScript 所需。

常見問題集 (FAQ)

查詢以下關於內容安全性原則的常見問題:

跨原始資源共用 (CORS) 和 Flash 跨網域原則會出現安全問題嗎?

實施 CORS 原則的推薦方法是允許存取限可信任的來源;這類來源規定要通過受信任網域的允許清單來進行。Flash 跨網域原則也是同樣的道理。 有些Target客戶擔心在Target網域中使用萬用字元。 問題是如果使用者已登入應用程式,並瀏覽原則允許的網域,則該網域上執行的任何惡意內容都可能從應用程式中擷取敏感內容,並在已登入使用者的安全上下文中執行操作。 這種情況通常稱為跨網站請求偽造(CSRF)。

但是,在Target實作中,這些原則應該不表示有安全問題。

「adob​​e.tt.omtrdc.net」是 Adobe 擁有的網域。 Adobe Target 是一種測試和個人化工具,Target 應可從任何地方接收和處理請求,而無需任何身份驗證。 這些請求包含用來進行 A/B 測試、建議或內容個人化的機碼/值組。

Adobe不會在「adobe.tt.omtrdc.net」指向的Adobe Target邊緣伺服器上儲存個人識別資訊(PII)或其他敏感資訊。

Target 應可透過 JavaScript 呼叫從任何網域存取。 允許這項存取的唯一方法是套用「Access-Control-Allow-Origin」搭配萬用字元。

我要如何允許或防止我的網站被內嵌為iFrame在外部網域下?

若要允許視覺化體驗撰寫器 (VEC)將您的網站內嵌於iFrame中,必須在您的網頁伺服器設定上變更CSP (若已設定)。 必須將Adobe個網域列入白名單並進行設定。

基於安全考量,您可能會想要防止網站被內嵌為iFrame在外部網域之下。

以下章節說明如何允許或防止VEC將您的網站內嵌於iFrame。

允許VEC將您的網站內嵌於iFrame中

讓VEC將您的網站內嵌於iFrame的最簡單解決方案是允許*.adobe.com (最廣泛的萬用字元)。

例如:

Content-Security-Policy: frame-ancestors 'self' *.adobe.com

如下圖所示(按一下以放大):

CSP具有最廣泛的萬用字元

您可能只想允許實際的Adobe服務。 可使用*.experiencecloud.adobe.com + https://experiencecloud.adobe.com達成此情境。

例如:

Content-Security-Policy: frame-ancestors 'self' https://*.experiencecloud.adobe.com https://experiencecloud.adobe.com https://experience.adobe.com

如下圖所示(按一下以放大):

CSP與ExperienceCloud限定範圍

使用https://<Client Code>.experiencecloud.adobe.com https://experience.adobe.com可以存取公司帳戶的最嚴格限制,其中<Client Code>代表您特定的使用者端代碼。

例如:

Content-Security-Policy: frame-ancestors 'self' https://ags118.experiencecloud.adobe.com https://experience.adobe.com

如下圖所示(按一下以放大):

CSP的clientcode範圍是

NOTE
如果您已實施啟動/標籤,則也必須將其解除鎖定。
例如:
Content-Security-Policy: frame-ancestors 'self' *.adobe.com *.assets.adobedtm.com;

防止VEC將您的網站內嵌於iFrame中

若要防止VEC將您的網站內嵌於iFrame中,您可以限製為「本身」。

例如:

Content-Security-Policy: frame-ancestors 'self'

如下圖所示(按一下以放大):

CSP錯誤

會顯示下列錯誤訊息:

Refused to frame 'https://kuehl.local/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self'".

recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3