安全なCookieとローカルのJSSアプリ開発
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore 10.0.1以降、SitecoreはデフォルトですべてのCookieにSecureフラグを設定します。
JSSアプリケーションがHTTPSで実行されていない場合、プロキシされたSitecore Cookie (分析Cookieを含む) はブラウザーによって拒否されるため、これはJSSローカル開発に影響を与える可能性があります。アプリケーションは訪問を追跡しず、コンテンツのパーソナライゼーションルールを適用しない可能性があります。
この問題を解決するには、次の2つのオプションがあります。
-
ローカルのJSSアプリのセキュリティ保護。
-
Sitecoreインスタンスのセキュリティ解除。
ローカルのJSSアプリのセキュリティ保護
ローカル環境でHTTPSを有効にするには、ローカルのリバース プロキシまたはngrokなどのサービスを使用します。
開発用のコンテナでSitecoreを実行している場合 (推奨)、docker-compose環境で提供されているTraefikリバース プロキシを使用できます。
Next.js用のSitecoreコンテナー テンプレートは、Traefikリバース プロキシで事前設定されています。
ngrokを使用している場合は、Hostヘッダーをローカル ホスト名に書き換える必要があります。例えば:
ngrok http -host-header=rewrite 3000
Sitecoreインスタンスのセキュリティ解除
Sitecoreインスタンスが安全なCookieを必要としない場合、ローカル環境はCookie関連の問題なしに機能することを期待できます。
本番環境のSitecoreインスタンスでは、次の設定を変更しないことを強くお勧めします。
安全なCookieの要件を回避するには、Sitecoreのweb.configを次のように変更します。
-
httpCookies構成で、requireSSLをfalseに、sameSiteをUnspecifiedに設定します。
-
sessionState構成で、cookieSameSiteをUnspecifiedに設定します。