面向 Adobe Experience Manager as a Cloud Service 的相同网站 Cookie 支持 same-site-cookie-support-for-adobe-experience-manager-as-a-cloud-service

从 80 版开始,Chrome 和后来的 Safari 都引入了一种新的 Cookie 安全模型。此模式旨在通过名为 SameSite 的设置向第三方站点引入有关 Cookie 可用性的安全控制措施。有关更多详细信息,请参阅 web.dev - SameSite cookies 说明

此设置的默认值 (SameSite=Lax) 可能会导致 AEM 实例或服务之间的身份验证不起作用。这是因为这些服务的域或 URL 结构可能不受此 Cookie 策略的约束。

若要解决此问题,请将登录令牌的 SameSite Cookie 属性设置为 None

CAUTION
SameSite=None 设置仅在协议安全 (HTTPS) 时应用。
如果协议不安全 (HTTP),则将忽略该设置,服务器会显示以下警告消息:
WARN com.day.crx.security.token.TokenCookie Skip 'SameSite=None'

您可以按照以下步骤添加设置:

  1. 在本地安装 AEM SDK 快速入门版本
  2. 转至位于 http://serveraddress:serverport/system/console/configMgr 的 Web 控制台
  3. 搜索找到 Adobe Granite Token Authentication Handler 并单击它
  4. 将​ 登录令牌 Cookie 的 SameSite 属性 ​设置为 None,如下图所示
    samesite
  5. 单击“保存”
  6. 执行使用 AEM SDK 快速入门生成 OSGi 配置中概述的步骤,为此特定设置生成 JSON 格式配置
  7. 按照用于设置属性的 Cloud Manager API 格式 OSGi 文档中的步骤来应用设置。

在更新此设置且用户注销并再次登录后,login-token Cookie 会具有 None 属性集,并且会包含在跨站点请求中。

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab