Salesforce

IMPORTANT
Amazon Web Services(AWS)でAdobe Experience Platformを実行する際に、Salesforce ソースを使用できるようになりました。 AWS上で動作するExperience Platformは、現在、一部のお客様にご利用いただけます。 サポートされているExperience Platform インフラストラクチャについて詳しくは、Experience Platform マルチクラウドの概要を参照してください。
WARNING
Salesforce ソースの基本認証は、2026年1月に廃止されます。 ソースを引き続き使用し、Salesforce アカウントからExperience Platformにデータを取り込むには、OAuth 2 Client Credential認証に移行する必要があります。

Adobe Experience Platform を使用すると、データを外部ソースから取得しながら、Experience Platform サービスを使用して、受信データの構造化、ラベル付け、拡張を行うことができます。アドビのアプリケーション、クラウドベースのストレージ、データベースなど、様々なソースからデータを取り込むことができます。

Experience Platform は、サードパーティの CRM システムからのデータ取り込みをサポートしています。CRM プロバイダーのサポートは Salesforce を含みます。

AzureでExperience PlatformのSalesforce ソースを設定する azure

AzureでExperience PlatformのSalesforce アカウントを設定する方法については、次の手順に従ってください。

AZUREに接続するためのIP アドレスの許可リスト

Azure上のExperience Platformにソースを接続する前に、リージョン固有のIP アドレスを許可リストに追加する必要があります。 地域に固有のIP アドレスをYoutube 許可リストに追加しないと、ソースを使用する際にエラーまたはパフォーマンスが低下する可能性があります。 詳しくは、IP アドレスの許可リスト ページを参照してください。

VA7
  • 40.70.226.96/28

  • 40.70.226.32/28

  • 52.232.229.255

  • 52.232.229.253

  • 40.70.226.144/28

  • 40.70.226.64/28

  • 40.70.225.240/28

  • 40.70.225.224/28

  • 40.70.224.64/29

  • 40.70.226.80/28

  • 40.70.226.176/28

  • 52.232.229.230

  • 40.70.226.128/28

  • 40.70.226.0/28

  • 40.70.226.16/28

  • 52.138.119.167

  • 40.70.226.160/28

  • 40.70.226.192/28

  • 40.70.226.48/28

  • 20.96.243.176

  • 40.70.226.112/28

  • 40.70.226.208/28

NLD2
  • 40.74.4.144/28

  • 40.74.3.176/28

  • 40.74.5.128/28

  • 40.74.4.176/28

  • 40.74.6.112/28

  • 40.74.7.128/28

  • 40.74.6.144/28

  • 51.105.144.81

  • 52.142.236.87

  • 40.74.6.80/28

  • 20.101.246.9

  • 40.74.7.208/28

  • 40.74.6.128/28

  • 40.74.7.176/28

  • 51.124.70.4

  • 40.74.7.144/28

  • 108.141.12.47

  • 20.50.23.153

  • 51.144.184.248/29

  • 40.74.7.160/28

  • 40.74.7.192/28

  • 51.105.144.1

  • 40.74.4.160/28

  • 40.74.6.96/28

AUS5
  • 20.43.111.32/28

  • 20.43.110.144/28

  • 20.53.111.113

  • 20.227.32.175

  • 20.43.110.96/28

  • 20.43.110.64/28

  • 20.193.56.144/28

  • 20.43.110.192/28

  • 20.43.97.95

  • 20.43.111.16/28

  • 20.43.110.128/28

  • 20.40.185.111

  • 20.193.56.160/28

  • 20.43.110.112/28

  • 40.82.220.111

  • 20.43.111.0/28

  • 20.193.38.208/28

  • 20.43.110.80/28

  • 20.43.110.176/28

  • 20.43.110.48/28

  • 20.193.36.37

  • 20.43.110.208/28

  • 20.43.110.224/28

  • 20.43.110.160/28

  • 20.40.185.225

  • 20.43.110.240/28

  • 20.193.56.128/28

  • 20.40.185.185

CAN2
  • 20.116.159.48/28

  • 20.116.159.144/28

  • 20.116.159.96/28

  • 20.220.243.238

  • 20.116.159.80/28

  • 20.116.159.32/28

  • 20.151.241.138

  • 4.172.28.20

  • 20.151.241.124

  • 20.116.248.0/28

  • 20.116.155.128/28

  • 20.116.159.64/28

  • 20.116.159.192/28

  • 20.116.159.176/28

  • 20.116.175.240/28

  • 20.116.248.16/28

  • 20.116.158.240/28

  • 20.116.159.112/28

  • 20.151.240.247

  • 20.151.241.173

  • 20.116.159.128/28

  • 20.116.159.160/28

  • 20.116.159.0/28

  • 20.104.5.248

  • 20.116.175.224/28

  • 20.116.159.208/28

  • 20.116.159.224/28

GBR9
  • 20.162.155.16/28

  • 20.162.154.96/28

  • 20.26.64.0/28

  • 20.26.64.96/28

  • 20.162.154.64/28

  • 20.108.200.27

  • 20.162.154.80/28

  • 20.162.153.192/28

  • 20.108.200.61

  • 20.162.154.48/28

  • 20.162.154.192/28

  • 20.162.154.0/28

  • 20.26.64.16/28

  • 20.162.154.112/28

  • 20.162.153.32/28

  • 20.254.80.141

  • 20.162.153.208/28

  • 20.108.203.20

  • 20.26.64.48/28

  • 20.162.154.240/28

  • 20.162.154.208/28

  • 20.162.154.160/28

  • 20.108.205.182

  • 20.108.202.198

  • 20.162.154.32/28

  • 20.162.153.16/28

IND2
  • 4.188.92.84

  • 4.224.5.224/28

  • 4.224.7.32/28

  • 4.188.92.87

  • 4.188.89.92

  • 4.224.5.112/28

  • 4.224.6.80/28

  • 4.224.144.224/28

  • 4.224.144.240/28

  • 4.224.6.96/28

  • 4.188.89.255

  • 4.188.94.32/28

  • 4.224.5.96/28

  • 4.224.6.64/28

  • 4.224.7.48/28

  • 4.224.5.208/28

  • 4.188.90.65

  • 4.224.6.16/28

  • 4.224.6.0/28

  • 4.224.5.192/28

  • 4.224.7.16/28

  • 4.188.90.67

  • 4.188.90.17

  • 4.188.94.48/28

  • 4.224.6.112/28

  • 4.224.5.240/28

  • 4.224.7.0/28

SalesforceからXDMへのフィールドマッピング

SalesforceとExperience Platformの間にソース接続を確立するには、Salesforce ソースデータフィールドをExperience Platformに取り込む前に、適切なターゲット XDM フィールドにマッピングする必要があります。

Salesforce データセットとExperience Platform間のフィールドマッピングルールについて詳しくは、次を参照してください。

Salesforce名前空間とスキーマ自動生成ユーティリティの設定

Salesforce ソースをB2B-CDPの一部として使用するには、まずPostman ユーティリティを設定してSalesforce名前空間とスキーマを自動生成する必要があります。 次のドキュメントでは、Postman ユーティリティの設定に関する追加情報を提供しています。

Experience Platform開発者コンソールとPostmanの設定が完了したら、Postman環境に適切な環境値を適用できるようになりました。

変数テーブルガイドを表示する

次の表は、値の例と、Postman環境の入力に関する追加情報を示しています。

table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3 8-row-3 9-row-3 10-row-3 11-row-3 12-row-3 13-row-3 14-row-3 15-row-3 16-row-3 17-row-3 layout-auto
変数 説明
CLIENT_SECRET {ACCESS_TOKEN}の生成に使用される一意のID。 の取得方法について詳しくは、Experience Platform APIの認証とアクセス {CLIENT_SECRET}に関するチュートリアルを参照してください。 {CLIENT_SECRET}
JWT_TOKEN JSON Web トークン (JWT)は、{ACCESS_TOKEN}の生成に使用される認証資格情報です。 の生成方法について詳しくは、Experience Platform APIの認証とアクセス {JWT_TOKEN}に関するチュートリアルを参照してください。 {JWT_TOKEN}
API_KEY Experience Platform APIへの呼び出しを認証するために使用される一意のID。 の取得方法について詳しくは、Experience Platform APIの認証とアクセス {API_KEY}に関するチュートリアルを参照してください。 c8d9a2f5c1e03789bd22e8efdd1bdc1b
ACCESS_TOKEN Experience Platform APIへの呼び出しを完了するために必要な認証トークン。 の取得方法について詳しくは、Experience Platform APIの認証とアクセス {ACCESS_TOKEN}に関するチュートリアルを参照してください。 Bearer {ACCESS_TOKEN}
META_SCOPE Marketoに関しては、この値は固定され、常にent_dataservices_sdkに設定されます。 ent_dataservices_sdk
CONTAINER_ID global コンテナには、標準のAdobeおよびExperience Platform パートナーが提供するすべてのクラス、スキーマフィールドグループ、データタイプ、スキーマが格納されます。 Marketoに関しては、この値は固定され、常にglobalに設定されます。 global
PRIVATE_KEY Experience Platform APIに対するPostman インスタンスの認証に使用される資格情報。 の取得方法については、「開発者向けコンソールの設定」および「 Postman開発者向けコンソールの設定」のチュートリアルおよび「{PRIVATE_KEY}」を参照してください。 {PRIVATE_KEY}
TECHNICAL_ACCOUNT_ID Adobe I/Oへの統合に使用する資格情報。 D42AEVJZTTJC6LZADUBVPA15@techacct.adobe.com
IMS Identity Management System (IMS)は、Adobe サービスに認証のためのフレームワークを提供します。 Marketoに関しては、この値は固定され、常にims-na1.adobelogin.comに設定されます。 ims-na1.adobelogin.com
IMS_ORG 製品やサービスを所有またはライセンス供与し、そのメンバーへのアクセスを許可できる法人。 情報の取得方法については、 Postman開発者向けコンソールの設定と{ORG_ID}に関するチュートリアルを参照してください。 ABCEH0D9KX6A7WA7ATQE0TE@adobeOrg
SANDBOX_NAME 使用している仮想サンドボックスパーティションの名前。 prod
TENANT_ID 作成するリソースが適切な名前空間で構成され、組織内に含まれていることを確認するために使用されるID。 b2bcdpproductiontest
PLATFORM_URL API呼び出しを行うURL エンドポイント。 この値は固定されており、常にhttp://platform.adobe.io/に設定されます。 http://platform.adobe.io/
munchkinId Marketo アカウントの一意のID。 の取得方法について詳しくは、 Marketo インスタンスの認証に関するチュートリアルを参照してください。munchkinId 123-ABC-456
sfdc_org_id Salesforce アカウントの組織ID。 Salesforce 組織IDの取得について詳しくは、次の ガイド Salesforceを参照してください。 00D4W000000FgYJUA0
has_abm Marketo Account-Based Marketingを購読しているかどうかを示すブール値。 false
has_msi Marketo Sales Insightを購読しているかどうかを示すブール値。 false

スクリプトの実行

Postman コレクションと環境を設定したら、Postman インターフェイスを使用してスクリプトを実行できるようになりました。

Postman インターフェイスで、自動生成ユーティリティのルート フォルダーを選択し、上部ヘッダーから​ Run ​を選択します。

root-folder

Runner インターフェイスが表示されます。 ここから、すべてのチェックボックスが選択されていることを確認し、Run Namespaces and Schemas Autogeneration Utility​を選択します。

run-generator

リクエストが成功すると、ベータ仕様に従ってB2B名前空間とスキーマが作成されます。

Amazon Web ServicesでExperience PlatformのSalesforce ソースを設定する aws

AVAILABILITY
この節は、Amazon Web Services(AWS)で動作するExperience Platformの実装に適用されます。 AWS上で動作するExperience Platformは、現在、一部のお客様にご利用いただけます。 サポートされているExperience Platform インフラストラクチャについて詳しくは、Experience Platform マルチクラウドの概要を参照してください。

Amazon Web Services (AWS)でExperience PlatformのSalesforce アカウントを設定する方法については、次の手順に従ってください。

前提条件

Salesforce アカウントをAWS リージョンのExperience Platformに接続するには、次の条件を満たす必要があります。

  • API アクセスを持つSalesforce アカウント。
  • JWT_BEARER OAuth フローを有効にするために使用できるSalesforce Connected Appです。
  • データへのアクセスに必要なSalesforceの権限。

AWSでの接続用IP アドレスの許可リストに加える

AWS上のExperience Platformにソースを接続する前に、リージョン固有のIP アドレスを許可リストに追加する必要があります。 詳しくは、AWS上のExperience Platformに接続するためのIP アドレスの許可リストに加えるに関するガイドを参照してください。

Salesforce Connected Appを作成

最初に、以下を使用して、PEM ファイルの証明書/キーペアを作成します。

openssl req -newkey rsa:4096 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
  1. Salesforce ダッシュボードで、設定( 設定アイコン)を選択します。 )を選択し、Setup​を選択します。
  2. App Managerに移動し、New Connection App​を選択します。
  3. アプリの名前を指定し、残りのフィールドを自動入力できるようにします。
  4. Enable OAuth Settingsのボックスを有効にします。
  5. コールバック URLを設定します。 これはJWTには使用されないので、https://localhostを使用できます。
  6. Use Digital Signaturesのボックスを有効にします。
  7. 前に作成したcert.pem ファイルをアップロードします。

必要な権限を追加

次の権限を追加します。

  1. API (api)によるユーザーデータの管理
  2. カスタム権限へのアクセス(custom_permissions)
  3. ID URL サービス(ID、プロファイル、電子メール、アドレス、電話)にアクセスする
  4. 一意のID (openid)へのアクセス
  5. いつでもリクエストを実行できます(refresh_token、offline_access)

権限が追加されたら、Issue JSON Web Token (JWT)-based access tokens for named user​のボックスを有効にしてください。

次に、SaveContinueManage Customer Details​の順に選択します。 消費者の詳細パネルを使用して、次の情報を取得します。

  • コンシューマーキー: Salesforce アカウントをExperience Platformに認証する際に、後でこのコンシューマーキーをクライアント IDとして使用します。
  • Consumer secret:後でSalesforce アカウントをExperience Platformに認証する際に、このConsumer secretをクライアント IDとして使用します。

接続されたアプリへのSalesforce ユーザーの認証

以下の手順に従って、Connected Appを使用する認証を取得します。

  1. Manage Connected Apps​に移動します。
  2. Edit を選択します。
  3. Permitted Users​を​ Admin approved users are pre-authorized ​として設定し、Save​を選択します。
  4. Settings> Manage Users >Profiles​に移動します。
  5. ユーザーに関連付けられているプロファイルを編集します。
  6. Connected App Access​に移動し、前の手順で作成したアプリを選択します。

JWT ベアラートークンの生成

JWT ベアラートークンを生成するには、次の手順に従います。

キーペアをpkcs12に変換

JWT ベアラートークンを生成するには、まず次のコマンドを使用して、証明書/キーペアをpkcs12形式に変換する必要があります。 この手順では、プロンプトが表示されたら、書き出しパスワード​を設定する必要もあります。

openssl pkcs12 -export -in cert.pem -inkey key.pem -name jwtcert >jwtcert.p12

pkcs12に基づくJava キーストアの作成

次に、次のコマンドを使用して、生成したpkcs12に基づいてJava キーストアを作成します。 この手順では、プロンプトが表示されたら、宛先キーストアパスワードを設定​する必要もあります。 さらに、以前の書き出しパスワードをソースキーストアパスワードとして指定する必要があります。

keytool -importkeystore -srckeystore jwtcert.p12 -destkeystore keystore.jks -srcstoretype pkcs12 -alias jwtcert

keystroke.jksにjwtcert エイリアスが含まれていることを確認します

次に、follow コマンドを使用して、keystroke.jksjwtcert エイリアスが含まれていることを確認します。 この手順では、前の手順で生成した宛先キーストアパスワードを指定するように求められます。

keytool -keystore keystore.jks -list

署名済みトークンを生成

最後に、以下のJava クラス JWTExampleを使用して、署名済みトークンを生成します。

package org.example;

import org.apache.commons.codec.binary.Base64;

import java.io.*;
import java.security.*;
import java.text.MessageFormat;

public class Main {

    public static void main(String[] args) {

        String header = "{\"alg\":\"RS256\"}";
        String claimTemplate = "'{'\"iss\": \"{0}\", \"sub\": \"{1}\", \"aud\": \"{2}\", \"exp\": \"{3}\"'}'";

        try {
            StringBuffer token = new StringBuffer();

            //Encode the JWT Header and add it to our string to sign
            token.append(Base64.encodeBase64URLSafeString(header.getBytes("UTF-8")));

            //Separate with a period
            token.append(".");

            //Create the JWT Claims Object
            String[] claimArray = new String[5];
            claimArray[0] = "{CLIENT_ID}";
            claimArray[1] = "{AUTHORIZED_SALESFORCE_USERNAME}";
            claimArray[2] = "{SALESFORCE_LOGIN_URL}";
            claimArray[3] = Long.toString((System.currentTimeMillis() / 1000) + 2629746*4);
            MessageFormat claims;
            claims = new MessageFormat(claimTemplate);
            String payload = claims.format(claimArray);

            //Add the encoded claims object
            token.append(Base64.encodeBase64URLSafeString(payload.getBytes("UTF-8")));

            //Load the private key from a keystore
            KeyStore keystore = KeyStore.getInstance("JKS");
            keystore.load(new FileInputStream("path/to/keystore"), "keystorepassword".toCharArray());
            PrivateKey privateKey = (PrivateKey) keystore.getKey("jwtcert", "privatekeypassword".toCharArray());

            //Sign the JWT Header + "." + JWT Claims Object
            Signature signature = Signature.getInstance("SHA256withRSA");
            signature.initSign(privateKey);
            signature.update(token.toString().getBytes("UTF-8"));
            String signedPayload = Base64.encodeBase64URLSafeString(signature.sign());

            //Separate with a period
            token.append(".");

            //Add the encoded signature
            token.append(signedPayload);

            System.out.println(token.toString());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
プロパティ
設定
claimArray[0]
クライアント IDでclaimArray[0]を更新します。
claimArray[1]
アプリに対して承認されたclaimArray[1] ユーザー名でSalesforceを更新します。
claimArray[2]
claimArray[2]をSalesforce ログイン URLで更新します。
claimArray[3]
有効期限がエポック時間からミリ秒単位でフォーマットされたclaimArray[3]を更新します。 例えば、3660624000000は12-31-2085です。
/path/to/keystore
/path/to/keystoreをキーストア.jksへの正しいパスに置き換えます
keystorepassword
keystorepasswordを宛先キーストアのパスワードに置き換えます。
privatekeypassword
privatekeypasswordをソースキーストアパスワードに置き換えます。

次の手順

Salesforce アカウントの前提条件の設定が完了したら、Salesforce アカウントをExperience Platformに接続し、CRM データを取り込みます。 詳しくは、以下のドキュメントを参照してください。

APIを使用してSalesforceをExperience Platformに接続する

以下のドキュメントでは、APIまたはユーザーインターフェイスを使用してSalesforceをExperience Platformに接続する方法について説明します。

UIを使用してSalesforceをExperience Platformに接続する

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089