嵌入在iframe中的外部商店使用cookie——如果用户阻止第三方cookie,是否可能?
假设您必须使用iframe将网络商店集成到我们自己的网站中。另一家商店使用Cookie,如果其Cookie被阻止,则无法运营 如果用户阻止第三方cookie怎么办? 如果用户使用Internet Explorer,设置可以解决此问题。但是,其他主要浏览器不支持P3P 因此,经过一些研究和实验,我意识到不可能让它在所有其他浏览器上工作。(虽然我只能用Firefox和Chrome进行测试。) 据我所知,自2013年以来,Mozilla严格执行了第三方cookie设置: 许多关于iframes中第三方cookie的文章都是在2013年之前撰写的。我不认为它们仍然有效。一些消息来源声称您至少可以访问现有的cookie。根据我的实验,甚至情况也不再如此 我的结论正确吗:嵌入在iframe中的外部商店使用cookie——如果用户阻止第三方cookie,是否可能?,iframe,cookies,Iframe,Cookies,假设您必须使用iframe将网络商店集成到我们自己的网站中。另一家商店使用Cookie,如果其Cookie被阻止,则无法运营 如果用户阻止第三方cookie怎么办? 如果用户使用Internet Explorer,设置可以解决此问题。但是,其他主要浏览器不支持P3P 因此,经过一些研究和实验,我意识到不可能让它在所有其他浏览器上工作。(虽然我只能用Firefox和Chrome进行测试。) 据我所知,自2013年以来,Mozilla严格执行了第三方cookie设置: 许多关于iframes中第三方
- 是否不再可能使用浏览器设置
- 换句话说,推荐的解决方案是否只是告诉用户允许第三方cookie
旁注:我找到了一些可能的替代方案,但它们的实施和操作成本非常高。例如,您可以通过同一域上的代理服务器将所有流量重定向到外部商店(这样Cookie再次成为第一方)。我读到的另一个解决方案是用本地存储代替cookies,但这说起来容易做起来难
如果你想重现这个问题,这里有一个简单的例子(使用www.mercateo.co.uk):
开始iframe
端部框架
如果第三方cookie被阻止,它会将您重定向到显示“您的浏览器不接受cookie”的错误页面。在Chrome和Firefox上测试。不,没有通用的解决方案适用于所有浏览器。IE和Safari有变通办法,但Firefox和Chrome没有 让我们把它分解一下: 1。Internet Explorer 是的,可以使用(隐私首选项平台项目)设置第三方cookie 为了实现它,嵌入在iframe中的shop可以设置一个“P3P HTTP响应头,例如:
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTR STP IND DEM"
CP代表“紧凑策略”。“CP”的内容如中所述)。您还需要部署完整的P3P隐私策略,如中所述
这是有争议的,因为浏览器无法验证信息是否正确。它必须信任发件人。引用自:
使用P3P时出现的一个关键问题是缺乏强制执行。因此,向P3P用户做出的承诺可能无法实现。虽然使用P3P的公司/网站向网站用户承诺隐私和使用收集的数据,但如果公司决定使用该信息,则没有真正的法律后果用于其他功能
因此,没有其他主要浏览器实现P3P
2.Safari(包括iOS设备)
可以,可以访问和修改第三方Cookie。虽然Safari通常不允许您设置第三方Cookie,但它允许访问现有的第三方Cookie
请注意,Safari默认情况下会阻止第三方cookie。在Firefox和Chrome中,用户必须主动更改浏览器的cookie设置
3.Firefox和Chrome
否,如果用户决定阻止第三方Cookie,则无法解决此问题
这两种浏览器尊重用户的cookie设置。最终,它总是在隐私和便利之间进行权衡。你可以做什么来绕过这个问题,并根据你的声明,即可以在商店中请求更改,就是创建一种“桥梁”“在iframe应用程序和包装页之间。所有主流浏览器都支持帧间通信,因此这里没有需要解决的技术差距
因此,IFrame应用程序将“要求您”为其设置cookies,因为您是主域,它将在第1方上运行,并且每次商店的IFrame加载时,它都必须要求您提供cookies,以便能够识别用户。这是可能的,从技术上讲并不困难,但需要应用程序基于AJAX而不是基于页面(这在我看来总是更好的,因为这意味着您将视图与数据分离)。这是意料之中的。浏览器无法知道iframe#1是一个外部有用的应用程序,而iframe#2到#99999是无用的垃圾邮件,应该阻止这些cookie。@MarcB但不久前,存在解决方法,不是吗?据我所知,Mozilla认为这是一个安全和隐私问题,并阻止了所有绕过用户设置的尝试。(至少到目前为止我是这么理解的。)
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTR STP IND DEM"