ShopifyにてECサイトを構築し、
マイページにてたくさんの機能を作っているため、できる限りログイン状態を長く維持し、
ユーザーに再度ログインをする手間を発生させたくないと考えております。
ただShopifyで構築したサイトは他のECサイト(楽天やAmazon , ZOZOなど)に比べて
すぐにログアウトをしてしまうと感じます。
実装面から、何かこのログイン状態の維持を長くすることは可能でしょうか?
現状、クッキーは有効になっております。
何かアドバイスをいただけますと幸いです。
課題: Shopifyでマイページの利便性を高めるため、他ECより早くログアウトされる体感を解消し、ログイン状態を長く維持したい。Cookieは有効。
共有情報: 海外コミュニティでは顧客ログインの有効期間は24時間とされる。決定要因は2つのCookie(Secure_customer_sig、storefront_digest)。実店舗の計測でも両方とも実質24時間で、アクセスのたびにその時点から24時間へ延長される(ローリング)。
補足: Shopifyの法的Cookieページには各々20年/2年と記載があるが、実運用では24時間であることが確認された。
技術的考察: JavaScriptでCookie期限を延ばす案はあるものの、サーバー側セッションが24時間で失効するなら効果はなく、セキュリティ上も推奨されない。
結果/状況: 24時間超に延長する実装策は提示されず、Shopify仕様による制約が再確認された。質問者は情報に感謝し、実質的に収束(抜本的な延長策は未提示)。
ShopifyにてECサイトを構築し、
マイページにてたくさんの機能を作っているため、できる限りログイン状態を長く維持し、
ユーザーに再度ログインをする手間を発生させたくないと考えております。
ただShopifyで構築したサイトは他のECサイト(楽天やAmazon , ZOZOなど)に比べて
すぐにログアウトをしてしまうと感じます。
実装面から、何かこのログイン状態の維持を長くすることは可能でしょうか?
現状、クッキーは有効になっております。
何かアドバイスをいただけますと幸いです。
海外のShopifyコミュニティの投稿を確認しますと、
ログインの有効期間は24時間のようです。
https://community.shopify.com/topic/891666
https://community.shopify.com/c/shopify-discussions/how-to-keep-customer-logged-in/td-p/468169
ログインの有効期限を決めているのは、
下記2つのCookieとのことです。
Secure_customer_sig
storefront_digest
このCookieの期限が24時間なので、
ログインの有効期限も24時間である、
という説明が上記のコミュニティへの投稿でなされています。
少し話が逸れますが、
https://www.shopify.com/jp/legal/cookies
こちらを見ると、2つのCookieの有効期限は20年間、2年間と記載されていますが、
実際のストアで設定されるCookieの有効期限を確認しますと、
確かにどちらも、24時間でした。
(厳密に言うと、24時間経過する前に、ストアにアクセスしますと、その時点から24時間にCookieの有効期限が延長されるようです。)
話を戻しまして、
JavaScriptでCookieの有効期限を操作する方法を提案している方もいるようですが、
例えそれが可能だったとしても、
Shopifyのサーバサイドでのログインセッションが24時間で失われてしまう場合、
Cookieを延命することに意味がなくなってしまいます。
また、
もし、JavaScriptでのCookie延命にトライされて、それが上手くいったとしても、
Shopifyがセキュリティを考慮して設定している内容を変更することは、
個人的には、おすすめできません。
ご希望の回答になっておらず大変恐縮ですが、
何かの参考になれば幸いです。
(キュー田辺)
田辺様
ご回答いただきまして誠にありがとうございました!大変参考になりました。