为了增强浏览器的安全性,已对跨域访问的Cookie处理进行更改。
从第80版开始,Google Chrome将未声明SameSite属性的Cookie视为SameSite=Lax处理。
从外部网站跳转时,不会发送未声明SameSite属性的Cookie。
Microsoft Edge的第86版或更高版本提供类似支持。
本浏览器的规格发生更改,会导致以下情况。
【事件1】
使用事先完成intra-mart Accel Platform验证的浏览器,从外部网站的链接地址等跳转到需要验证的intra-mart Accel Platform页面时,则作为未验证状态被访问。
从外部网站的链接地址等进行跳转时,不会发送Cookie,因此无法维持会话。
【事件2】
使用SAML验证不通过intra-mart Accel Platform的登录页面,而使用跳转到需要任意验证的页面的功能(samlsso)时,将跳转到HOME页面而不是相应的页面。
SAML验证时,在IdP(外部网站)的登录页面进行验证。
通过IdP进行验证后,将跳转到intra-mart Accel Platform,并自动登录。
此时,目标页面信息(URL)预先存储在会话中,但不会发送Cookie,因此无法获取目标页面信息。
由于无法获取目标页面信息,因此将跳转到HOME页面。
【解决方法】
为了通过外部网站进行跳转并发送Cookie,为在intra-mart Accel Platform中使用的Cookie属性赋予SameSite=None; Secure。
此外,必须通过https访问intra-mart Accel Platform。
具体需要采取以下措施。
Resin 4.0.64或更高版本且使用Resin的会话管理的情况下
在resin-web.xml中添加以下标签(cookie-same-site和cookie-secure)。
<web-app>
<session-config>
・・・・
<cookie-same-site>None</cookie-same-site>
<cookie-secure>true</cookie-secure>
・・・・
</session-config>
</web-app>
使用Resin 4.0.63或更低版本或「会话管理模块」的情况下
请参考以下CookBook进行处理。
https://dev.intra-mart.jp/cookbook-205087/
关键词:
安全性、SameSite、Cookie 、SAML、samlsso、未验证、外部网站、跨域、会话、会话管理模块、Resin、Google Chrome、Microsoft Edge
-- 适用对象 ----------------------------------------------------------
iAP/Accel Platform/所有更新版本
----------------------------------------------------------------------
FAQID:1142
从外部网站跳转到intra-mart Accel Platform时,可能会处于未验证状态,可能会被跳转到HOME页面。