クッキー
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore CDPはウェブブラウザ上でクッキーをファーストパーティクッキーとして保存します。ファーストパーティクッキーは、ウェブブラウザのアドレスバーに表示されるドメインによって設定されるクッキーです。
- bid_{clientKey} - このクッキーはセッション間で ブラウザID を永続化し、Engage SDKがSitecore CDPに行うすべての呼び出しに必要です。このクッキーは、クッキーが期限切れまたは削除されるまで、各ブラウザごとに一意のユニバーサル・ユニーク識別子(UUID)を生成します。クッキーが期限切れまたは削除された後、次に訪問者が戻ってくる際に新しいUUIDが生成されます。
- bx_bucket_number - このセッションクッキーは、あなたがSitecore Personalizeを持っていて、ウェブ体験やウェブ実験をアプリ内で使用している場合にのみ使用されます。クッキーはゲストを特定のバリアントに割り当てます。特定のセッション中にあなたのサイト上でライブ中の各ウェブ実験に対して割り当てを行います。クッキーはセッション期間中のみ保存されます。
- bx_guest_ref - このセッションクッキーは、Sitecore Personalizeがある場合と、ウェブ体験やウェブ実験をアプリ内で使用している場合にのみ使用されます。クッキーはバケットを持つすべてのユーザーにユニバーサリー・ユニーク識別子(UUID)を割り当てます。クッキーはセッション期間中のみ保存されます。
Engage SDKはクライアントとサーバーの両方からクッキーを設定することをサポートしています。
クッキーの同意を確認する
!重要Engage SDKを読み込み、サイト訪問者が同意した場合のみクッキーを設定してください。
こちらは、サイト訪問者がクッキーを受け入れた場合のみEngage SDKを初期化するコード例です。
ご自身のクッキー同意の実装は、アプリケーションの要件、法的規制、ユーザー体験デザインによって異なります。この例はあくまで説明目的であり、ご自身のコードでカスタマイズしない限り機能しません。
// Import your custom logic that checks whether the site visitor has accepted cookies: import { getCookieConsent } from "<YOUR_CUSTOM_LOGIC_PATH>";
// Your custom function to check whether the site visitor has accepted cookies: const hasConsent = getCookieConsent();
// If the site visitor accepts cookies, initialize the SDK: if (hasConsent === true) { engage = await window.Engage.init(settings); };
クライアントセットクッキー
クライアント側しかアクセスできない場合は、クライアント側からクッキーを設定する必要があります。
クライアントからクッキーを設定するには、settingsオブジェクトでforceServerCookieMode属性をfalseに設定し、そのsettingsオブジェクトをEngage.init()関数に渡すことで可能です。コードサンプルについては、「Reactアプリの統合」および「Nextアプリの統合(クライアントセットクッキー)」を参照してください。
サーバーセットクッキー
サーバー側にアクセスできる場合は、クライアントではなくサーバーからクッキーを設定することができます。その場合、ウェブサーバー上でクッキーを作成・管理します。その後、ウェブサーバーがクッキーをクライアントアプリに送信します。最後に、クライアントアプリがクッキーをウェブブラウザに保存します。
サーバーからクッキーを設定することには以下のような利点があります:
- クッキーに httpOnly(https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#restrict\_access\_to\_cookies) 属性を追加することでセキュリティを強化します。これにより、クライアント側JavaScriptクッキーへのアクセスを防ぎ、クロスサイトスクリプティング(XSS)攻撃を軽減します。
- インテリジェントトラッキング防止(ITP)がクッキーに与える影響を軽減します。例えば、クライアントセットクッキーとは異なり、サーバーセットクッキーは7日後に自動的に期限切れになることはありません。
Engage SDKパッケージを使えば、サーバー側のクッキーを設定するには、settingsオブジェクトのforceServerCookieMode属性をtrueに設定し、クライアント側のEngage.init()関数とサーバー側のEngage.initServer()関数に渡します。コードサンプルについては、「Nextアプリ(サーバーセットクッキー)の統合」を参照してください。