Salesforce

IMPORTANT
您現在可以在Amazon Web Services (AWS)上執行Adobe Experience Platform時使用Salesforce來源。 目前有限數量的客戶可使用在AWS上執行的Experience Platform 。 若要進一步瞭解支援的Experience Platform基礎結構,請參閱Experience Platform多雲端總覽
WARNING
Salesforce來源的基本驗證將在2026年1月被取代。 您必須移至OAuth 2使用者端認證驗證,才能繼續使用該來源,並將資料從您的Salesforce帳戶擷取至Experience Platform。

Adobe Experience Platform可讓您從外部來源擷取資料,同時使用Experience Platform服務來建構、加標籤及增強傳入資料。 您可以從多種來源(例如Adobe應用程式、雲端儲存、資料庫和許多其他來源)內嵌資料。

Experience Platform支援從協力廠商CRM系統擷取資料。 CRM提供者的支援包括Salesforce。

在Azure上設定Experience Platform的Salesforce來源 azure

請依照下列步驟,瞭解如何在Azure上為Experience Platform設定Salesforce帳戶。

用於連線到Azure的IP位址允許清單

您必須先將區域特定的IP位址新增至允許清單,才能將來源連線至Azure上的Experience Platform。 未能將您區域特定的IP位址新增到允許清單可能會導致使用來源時的錯誤或效能不佳。 如需詳細資訊,請閱讀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來源資料欄位必須先對應到適當的目標XDM欄位,才能內嵌到Experience Platform中。

請參閱下列內容,以取得有關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}的唯一識別碼。 如需如何擷取{CLIENT_SECRET}的詳細資訊,請參閱有關驗證及存取Experience Platform API的教學課程。 {CLIENT_SECRET}
JWT_TOKEN JSON Web權杖(JWT)是用於產生{ACCESS_TOKEN}的驗證認證。 如需如何產生{JWT_TOKEN}的相關資訊,請參閱有關驗證及存取Experience Platform API的教學課程。 {JWT_TOKEN}
API_KEY 用於驗證Experience Platform API呼叫的唯一識別碼。 如需如何擷取{API_KEY}的詳細資訊,請參閱有關驗證及存取Experience Platform API的教學課程。 c8d9a2f5c1e03789bd22e8efdd1bdc1b
ACCESS_TOKEN 完成對Experience Platform API的呼叫所需的授權權杖。 如需如何擷取{ACCESS_TOKEN}的詳細資訊,請參閱有關驗證及存取Experience Platform API的教學課程。 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系統(IMS)提供驗證Adobe服務的架構。 關於Marketo,此值是固定的,且一律設為: ims-na1.adobelogin.com ims-na1.adobelogin.com
IMS_ORG 企業實體,可以擁有或授權產品及服務並允許存取其成員。 如需如何擷取{ORG_ID}資訊的說明,請參閱設定開發人員主控台和 Postman的教學課程。 ABCEH0D9KX6A7WA7ATQE0TE@adobeOrg
SANDBOX_NAME 您正在使用的虛擬沙箱分割的名稱。 prod
TENANT_ID ID,用來確保您建立的資源已正確命名且包含在您的組織內。 b2bcdpproductiontest
PLATFORM_URL 您對其進行API呼叫的URL端點。 此值是固定的,且一律設為: http://platform.adobe.io/ http://platform.adobe.io/
munchkinId 您的Marketo帳戶的唯一識別碼。 如需如何擷取munchkinId的詳細資訊,請參閱驗證您的 Marketo 執行個體的教學課程。 123-ABC-456
sfdc_org_id 您的Salesforce帳戶的組織識別碼。 請參閱下列Salesforce 指南,以取得您Salesforce組織ID的詳細資訊。 00D4W000000FgYJUA0
has_abm 表示您是否訂閱Marketo Account-Based Marketing的布林值。 false
has_msi 表示您是否訂閱Marketo Sales Insight的布林值。 false

執行指令碼

設定好Postman集合和環境後,您現在可以透過Postman介面執行指令碼。

在Postman介面中,選取自動產生器公用程式的根資料夾,然後從頂端標題選取​ Run

根資料夾

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帳戶。
  • Salesforce Connected App可供您用來啟用JWT_BEARER OAuth流程。
  • Salesforce中存取資料的必要許可權。

AWS上連線的IP位址允許清單

您必須先將地區特定的IP位址新增至允許清單,才能將您的來源連線到AWS上的Experience Platform。 如需詳細資訊,請參閱允許清單IP位址以連線至AWS上的Experience Platform的指南。

建立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. 存取身分URL服務(識別碼、設定檔、電子郵件、地址、電話)
  4. 存取唯一識別碼(openid)
  5. 隨時執行請求(refresh_token、offline_access)

在新增您的許可權後,請確定您已啟用​ Issue JSON Web Token (JWT)-based access tokens for named user ​的方塊。

接著,選取​ SaveContinue,然後選取​ Manage Customer Details。 使用消費者詳細資訊面板來擷取下列內容:

  • 消費者金鑰:您稍後在向Experience Platform驗證Salesforce帳戶時,會使用此消費者金鑰作為使用者端ID。
  • 消費者機密:您稍後在向Experience Platform驗證Salesforce帳戶時,會使用此消費者機密作為使用者端ID。

授權您的Salesforce使用者使用連線應用程式

請依照下列步驟,取得使用連線應用程式的授權:

  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別名

接下來,使用下列命令確認您的keystroke.jks包含jwtcert別名。 在此步驟中,系統會提示您提供上一步驟中產生的目的地金鑰存放區密碼。

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]
以您的使用者端識別碼更新claimArray[0]
claimArray[1]
以針對應用程式授權的Salesforce使用者名稱更新claimArray[1]
claimArray[2]
以您的Salesforce登入URL更新claimArray[2]
claimArray[3]
以自epoch時間以來的毫秒格式來更新到期日期的claimArray[3]。 例如,3660624000000是12-31-2085。
/path/to/keystore
/path/to/keystore取代為您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