Skip to content

Chrome80のSameSiteの影響で3Dセキュア等を利用する場合に購入に失敗する #4457

@Yangsin

Description

@Yangsin

概要(Overview)

Chrome80から導入されるSameSiteの影響で、3Dセキュア等を利用した決済でエラーとなる

原因)
外部ドメインからEC-CUEBサイトのドメインにPOSTで遷移したときに、
「EC-CUBEサイトで設定したCookie」がEC-CUBEサイトのサーバーに送信されないため。

例えば、リンク型や3Dセキュアなどで外部のページから、EC-CUBEサイトへ帰ってくる時に
期待するCookieが送信されなくなり、エラーとなる。

実際に、EC-CUBE2~4すべてにおいて以下のような事象が発生する可能性がある。
(EC-CUBEのセッション情報のCookieが送信されないため)
 ・決済完了画面が表示される、エラーとなる。
 ・決済完了画面は表示されるが、ログアウトされた状態となる。
 ・決済完了画面は表示されるが、カートの中身がクリアされない。
  etc

期待する内容(Expect) or 要望 (Requirement)

3Dセキュアなどでも正常に購入される

再現手順(Procedure)

Chrome79でも以下の2つの設定を(chrome://flags)でEnableにすることで
確認することができます。
  SameSite by default cookies
  Cookies without SameSite must be secure
ただし、Cookieが生成されてから2分間は救済措置により影響は発生しません。
(ログインしてから2分以上、十分に時間を空けてから確認する必要があります。)

すでに、ベリトランス様より、事象の確認を報告いただいております。

関連情報 (Ref)

 ・新しい Cookie 設定 SameSite=None; Secure の準備を始めましょう
  https://developers-jp.googleblog.com/2019/11/cookie-samesitenone-secure.html
 ・SameSite Frequently Asked Questions (FAQ)
  https://www.chromium.org/updates/same-site/faq
 ・Cookies default to SameSite=Lax - Chrome Platform Status
  https://www.chromestatus.com/feature/5088147346030592
 ・SameSite cookies explained - wev.dev
  https://web.dev/samesite-cookies-explained/
 ・SameSite cookie recipes - web.dev
  https://web.dev/samesite-cookie-recipes/
 ・Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた
  https://qiita.com/ahera/items/0c8276da6b0bed2b580c
 ・Effect on customer websites and Microsoft services and products in Chrome version 80 or later
  https://docs.microsoft.com/en-us/office365/troubleshoot/miscellaneous/chrome-behavior-affects-applications

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions