无法为Cloudfront设置Cookie以进行基于安全Cookie的身份验证

时间:2018-08-17 10:27:17

标签: security authentication cookies amazon-cloudfront

在我们的项目中,我们正在尝试为使用cloudfront cdn访问的内容集成基于cookie的身份验证。可以说我的应用程序域是A.com,并且正在从B.com访问。 A.com的内容通过cloudfont CDN提供。现在,B.com希望从安全的Cloudfront CDN访问内容。通常,B.com向A.com请求内容。 A.com将请求重定向到Cloudfront CDN。 B.com必须通过具有重定向请求的cookie将身份验证信息发送到cloudfront.net。 see this for an elaborate diagram. 现在,我在初始请求的响应标头中设置cookie,但无法在重定向到cloudfront.net域的请求标头中找到它。结果是我收到403响应,无法访问内容。

1 个答案:

答案 0 :(得分:0)

A.com可以在访问B.com域中托管的应用程序的用户浏览器中设置必要的Cookie。这些第三方cookie将存储在用户的浏览器中。当您再次访问A.com域时,存储的第三方Cookie将随请求自动由用户的浏览器发送。

我可以看到您要将A.com域cookie发送到cloudfront.net域,浏览器不允许。由于所需的Cookie不会随重定向请求一起发送到cloudfront.net,因此该请求返回了403禁止响应。

如果您同时拥有CDN发行版和A.com域,则可以创建一个名为cdn.A.com的cname,它将指向您的CDN发行版。 现在,当将请求重定向到cdn.A.com以获取内容时,必要的第三方cookie将随请求一起发送,并且可以访问文件而没有任何问题。