内容安全策略 (CSP) 指令
如果您在为Adobe Target实施使用内容安全策略 (CSP),则在使用at.js 2.1或更高版本时应该添加以下CSP指令:
connect-src
与*.tt.omtrdc.net
已列入允许列表。要允许将网络请求发送到 Target 边缘时是必需的。style-src unsafe-inline
。对于预隐藏和闪烁控制是必需的。script-src unsafe-inline
。需要此项以允许可能作为 HTML 选件一部分的 JavaScript 执行。
常见问题解答 (FAQs)
有关安全策略,请参阅以下常见问题解答:
跨源资源共享 (CORS) 和 Flash 跨域策略是否存在安全问题?
实施 CORS 策略的推荐方法是,只允许通过受信任域的允许列表访问需要它的受信任来源。Flash 跨域策略亦是如此。 有些Target客户担心在Target中的域使用通配符。 问题在于,如果用户登录到应用程序,并访问策略允许的域,则该域上运行的任何恶意内容都可能从应用程序中检索敏感内容,并在登录用户的安全上下文中执行操作。 这种情况通常称为跨站点请求伪造(CSRF)。
但是,在Target实施中,这些策略不应代表安全问题。
"adobe.tt.omtrdc.net" 是 Adobe 拥有的域。 Adobe Target 是一种测试和个性化工具,预计 Target 可以接收和处理来自任何地方的请求,而无需任何身份验证。 这些请求包含用于 A/B 测试、建议或内容个性化的键/值对。
Adobe未在“adobe.tt.omtrdc.net”指向的Adobe Target边缘服务器上存储个人身份信息(PII)或其他敏感信息。
可以通过 JavaScript 调用从任何域访问 Target。 允许此访问的唯一方法是应用带有通配符的“Access-Control-Allow-Origin”。
如何允许或阻止我的站点被嵌入为外部域下的iFrame?
要允许可视化体验编辑器 (VEC)将您的网站嵌入到iFrame中,必须在您的Web服务器设置上更改CSP(如果已设置)。 必须将Adobe个域列入白名单并进行配置。
出于安全原因,您可能希望阻止将站点作为iFrame嵌入到外部域下。
以下部分将说明如何允许或阻止VEC将您的网站嵌入到iFrame中。
允许VEC将您的网站嵌入到iFrame中
启用VEC将您的网站嵌入到iFrame的最简单解决方案是允许使用最广泛的通配符*.adobe.com
。
例如:
Content-Security-Policy: frame-ancestors 'self' *.adobe.com
如下图所示(单击放大):
带有最广泛通配符的 {width="600" modal="regular"}
您可能希望仅允许实际的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
如下图所示(单击放大):
ExperienceCloud作用域为 {width="600" modal="regular"}
使用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
如下图所示(单击放大):
Content-Security-Policy: frame-ancestors 'self' *.adobe.com *.assets.adobedtm.com;
阻止VEC将您的网站嵌入到iFrame中
要阻止VEC将您的网站嵌入到iFrame中,您可以仅将其限制为“自身”。
例如:
Content-Security-Policy: frame-ancestors 'self'
如下图所示(单击以放大):
将显示以下错误消息:
Refused to frame 'https://kuehl.local/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self'".