Lightning Out 用のブラウザのサードパーティ Cookie の有効化

Lightning コンポーネントは、ユーザのブラウザに Cookie を設定します。Lightning Out は Salesforce の_外部_で Lightning コンポーネントを実行するため、これらの Cookie は「サードパーティ」 Cookie となります。これらのサードパーティ Cookie を Lightning Out で機能させるには、代わりの方法がいくつかあります。

ユーザは、ブラウザ設定でサードパーティの Cookie を許可する必要があります。

iOS および iPadOS 13.4 と Safari 13.1 以降では、[サイト越えトラッキングを防ぐ] 設定がデフォルトで有効になっています。サードパーティ Cookie を許可して Lightning Out を使用するには、この設定を無効にする必要があります。

[サイト越えトラッキングを防ぐ] 設定を確認する手順は、次のとおりです。

  • Mac デスクトップの Safari アプリケーションでは、[Safari] | [環境設定] に移動し、[プライバシー] をクリックします。
  • iOS および iPadOS では、[設定] | [Safari] に移動します。

ブラウザ設定のサイト越えトラッキングの変更をすべての Safari ユーザに要求する代わりに、カスタムドメインを設定する方法があります。カスタムドメインは、Lightning Out アプリケーションをコールする外部サーバの第 1 レベルドメインに対応します。この方法により、ブラウザには、外部サーバと Lightning Out アプリケーションが同じドメインの一部として表示されます。このため、Cookie を 2 つのサイト間で共有できます。

たとえば、Lightning Out アプリケーションを external.example.com サーバからコールするには、Salesforce で lightningout.example.com などのカスタムドメインを追加します。完全修飾ドメイン名 (FQDN) の lightningout.example.com が Salesforce のカスタムドメイン URL に対応付けられるように DNS レコードを設定する必要があります。

  1. カスタムドメイン名を決定します (例: lightningout.example.com)。カスタムドメインは、Lightning Out アプリケーションのコール元のサードパーティサイトと同じ親ドメインに解決される必要があります。
  2. [設定] から、[クイック検索] ボックスに「Domains」と入力して 18 文字の組織 ID を探し、[ドメイン] を選択します。[ドメインを追加] をクリックし、ページ上部に表示される組織 ID をメモします。
  3. カスタムドメイン名 (例: lightningout.example.com) を Salesforce のカスタムドメインに対応付けるように DNS プロバイダで CNAME レコードを設定します。CNAME レコードの対象では、YourFQDN.Your18charOrgId.live.siteforce.com の形式が使用されます。ここで YourFQDN は、最初のステップで選択したカスタムドメイン名です。
  4. [ドメインを追加] ページを完了してカスタムドメインを作成します。
    1. Domain Name には、最初のステップで選択したカスタムドメイン名 (例: lightningout.example.com) を入力します。
    2. HTTPS Option では、Salesforce が Salesforce のサーバ上でユーザの HTTPS 証明書を使用して、HTTPS を介してドメインを提供することを選択します。
  5. DNS プロバイダで設定する CNAME レコードの FQDN (例: lightningout.example.com) が使用されるように、外部サーバのページで Lightning Out のマークアップを設定します。script タグの src 属性と $Lightning.use() 関数の lightningEndPointURI 引数では、どちらも CNAME レコードの FQDN を使用する必要があります。
  6. アプリケーションで認証が使用されている場合は、「Lightning Out からの認証」を参照してください。

関連トピック