spring-security 阻止Chrome禁用iframe中的Cookie

ecfdbz9o  于 2022-11-11  发布在  Spring
关注(0)|答案(1)|浏览(194)

我有一个页面(在Tomcat上运行)需要在其他网站的iframe中显示。此页面的工作依赖于Javascript和cookie。它还可以检测浏览器中是否启用了Javascript和cookie。我有一个测试页面(在Apache Web服务器上运行)中的以下html片段,显示了在iframe中的页面

<div id="embedded-page">
<iframe referrerpolicy="no-referrer-when-downgrade" src="_link_to_the_page_on_Tomcat">
...
the page is displayedd in iframe
....
</iframe>
</div>

我在我的测试中使用了上面的html。页面可以在FF,Edge,Brave和其他浏览器中正确显示。然而,在Chrome中,页面报告不支持cookie。
要显示的页面运行在Tomcat上,并且是Spring MVC网站和Spring Security的一部分。

<security:headers disabled="true"/>

如何防止Chrome在iframe中禁用cookie?

azpvetkf

azpvetkf1#

这与Cookie的SameSite属性有关。
在2月份的Chrome 80中,Chrome将把没有声明SameSite值的cookie视为SameSite=Lax cookie。安全设置将可用于外部访问,前提是从安全连接访问它们。
Quote taken from here.
你应该尝试在你的Cookie中设置SameSite=None来使它工作。在那之后,你可以找出SameSite属性的最佳值。看看这个答案。
iframe not reading cookies in Chrome

相关问题