Salesforce
Skapat för:
- Utvecklare
Med Adobe Experience Platform kan data hämtas från externa källor samtidigt som du kan strukturera, etikettera och förbättra inkommande data med hjälp av Experience Platform tjänster. Du kan importera data från en mängd olika källor, till exempel Adobe-program, molnbaserad lagring, databaser och många andra.
Experience Platform har stöd för inmatning av data från ett CRM-system från tredje part. Stöd för CRM-providers omfattar Salesforce.
Konfigurera din Salesforce-källa för Experience Platform på Azure
Följ stegen nedan för att lära dig hur du kan konfigurera ditt Salesforce-konto för Experience Platform på Azure.
IP-adressen tillåtelselista för anslutning till Azure
Du måste lägga till regionspecifika IP-adresser i tillåtelselista innan du kan ansluta dina källor till Experience Platform på Azure. Om du inte lägger till dina regionspecifika IP-adresser i tillåtelselista kan det leda till fel eller sämre prestanda när du använder källor. Läs sidan IP-adress tillåtelselista om du vill ha mer information.
-
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
-
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
-
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
-
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
-
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
-
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
Fältmappning från Salesforce till XDM
Om du vill upprätta en källanslutning mellan Salesforce och Experience Platform måste Salesforce källdatafälten mappas till rätt mål-XDM-fält innan de hämtas till Experience Platform.
Mer information om fältmappningsregler mellan Salesforce-datamängder och Experience Platform finns i följande:
Konfigurera det automatiska genereringsverktyget för namnutrymmet Salesforce och schemat
Om du vill använda källan Salesforce som en del av B2B-CDP måste du först konfigurera ett Postman-verktyg för att automatiskt generera Salesforce namnutrymmen och scheman. Följande dokumentation innehåller ytterligare information om hur du konfigurerar verktyget Postman:
- Du kan hämta samlingen och miljön för automatisk generering av namnområde och scheman från den här GitHub-databasen.
- Information om hur du använder Experience Platform API:er, inklusive information om hur du samlar in värden för obligatoriska huvuden och läser API-anrop från exempel, finns i guiden Komma igång med Experience Platform API:er.
- Mer information om hur du genererar autentiseringsuppgifter för Experience Platform API:er finns i självstudiekursen om autentisering och åtkomst av Experience Platform API:er.
- Information om hur du konfigurerar Postman för Experience Platform API:er finns i självstudiekursen Konfigurera utvecklarkonsol och Postman.
Med en Experience Platform-utvecklarkonsol och Postman konfigurerad kan du nu börja använda lämpliga miljövärden i din Postman -miljö.
Följande tabell innehåller exempelvärden samt ytterligare information om hur du fyller i din Postman-miljö:
CLIENT_SECRET
{ACCESS_TOKEN}
. I självstudiekursen om autentisering och åtkomst av Experience Platform API:er finns mer information om hur du hämtar din {CLIENT_SECRET}
.{CLIENT_SECRET}
JWT_TOKEN
{JWT_TOKEN}
.{JWT_TOKEN}
API_KEY
{API_KEY}
.c8d9a2f5c1e03789bd22e8efdd1bdc1b
ACCESS_TOKEN
{ACCESS_TOKEN}
.Bearer {ACCESS_TOKEN}
META_SCOPE
ent_dataservices_sdk
.ent_dataservices_sdk
CONTAINER_ID
global
innehåller alla standardklasser som tillhandahålls av Adobe- och Experience Platform-partners, schemafältgrupper, datatyper och scheman. Med avseende på Marketo är det här värdet fast och ställs alltid in på global
.global
PRIVATE_KEY
{PRIVATE_KEY}
TECHNICAL_ACCOUNT_ID
D42AEVJZTTJC6LZADUBVPA15@techacct.adobe.com
IMS
ims-na1.adobelogin.com
.ims-na1.adobelogin.com
IMS_ORG
{ORG_ID}
-information.ABCEH0D9KX6A7WA7ATQE0TE@adobeOrg
SANDBOX_NAME
prod
TENANT_ID
b2bcdpproductiontest
PLATFORM_URL
http://platform.adobe.io/
.http://platform.adobe.io/
munchkinId
munchkinId
.123-ABC-456
sfdc_org_id
00D4W000000FgYJUA0
has_abm
false
has_msi
false
Kör skripten
När din Postman-samling och miljö är konfigurerad kan du nu köra skriptet via gränssnittet Postman.
I gränssnittet Postman väljer du rotmappen för verktyget för autogenerering och sedan Run i den övre rubriken.
Gränssnittet Runner visas. Se till att alla kryssrutor är markerade och välj sedan Run Namespaces and Schemas Autogeneration Utility.
En lyckad begäran skapar B2B-namnutrymmen och scheman enligt betaspecifikationerna.
Konfigurera din Salesforce-källa för Experience Platform på Amazon Web Services
Följ stegen nedan för att lära dig hur du kan konfigurera ditt Salesforce-konto för Experience Platform på Amazon Web Services (AWS).
Förhandskrav
Om du vill ansluta ditt Salesforce-konto till Experience Platform i en AWS-region måste du ha följande:
- Ett Salesforce-konto med API-åtkomst.
- A Salesforce Connected App som du sedan kan använda för att aktivera JWT_BEARER OAuth-flöde.
- Nödvändiga behörigheter i Salesforce för att komma åt data.
IP-adressen tillåtelselista för anslutning till AWS
Du måste lägga till regionspecifika IP-adresser i tillåtelselista innan du kan ansluta dina källor till Experience Platform på AWS. Mer information finns i guiden om att tillåtslista IP-adresser för att ansluta till Experience Platform på AWS.
Skapa en Salesforce Connected App
Använd först följande för att skapa PEM-filer med certifikat/nyckelpar.
openssl req -newkey rsa:4096 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
- Välj inställningar (
- Navigera till App Manager och välj sedan New Connection App.
- Ange ett namn för appen och låt resten av fälten fyllas i automatiskt.
- Aktivera rutan för Enable OAuth Settings.
- Ange en återanrops-URL. Eftersom detta inte kommer att användas för JWT kan du använda
https://localhost
. - Aktivera rutan för Use Digital Signatures.
- Överför filen cert.pem som skapades tidigare.
Lägg till nödvändiga behörigheter
Lägg till följande behörigheter:
- Hantera användardata via API:er (api)
- Åtkomst till anpassade behörigheter (custom_permissions)
- Öppna URL-tjänsten för identitet (id, profil, e-post, adress, telefon)
- Åtkomst till unika identifierare (openID)
- Utför begäranden när som helst (refresh_token, offline_access)
När du har lagt till dina behörigheter måste du aktivera rutan för Issue JSON Web Token (JWT)-based access tokens for named user.
Välj sedan Save, Continue och sedan Manage Customer Details. Använd panelen med konsumentinformation för att hämta följande:
- Konsumentnyckel: Du kommer senare att använda den här konsumentnyckeln som ditt klient-ID när du autentiserar ditt Salesforce-konto för Experience Platform.
- Konsumenthemlighet: Du kommer senare att använda den här konsumenthemligheten som ditt klient-ID när du autentiserar ditt Salesforce-konto för Experience Platform.
Auktorisera din Salesforce-användare till den anslutna appen
Följ stegen nedan för att få behörighet att använda den anslutna appen:
- Navigera till Manage Connected Apps.
- Välj Edit.
- Konfigurera Permitted Users som Admin approved users are pre-authorized och välj sedan Save.
- Navigera till Settings> Manage Users >Profiles.
- Redigera den profil som är kopplad till användaren.
- Navigera till Connected App Access och markera sedan appen som du skapade i ett tidigare steg.
Generera JWT Bearer-token
Följ stegen nedan för att generera din JWT Bearer-token.
Konvertera nyckelpar till pkcs12
Om du vill generera en JWT Bärartoken måste du först använda följande kommando för att konvertera ditt certifikat/nyckelpar till pkcs12-format. Under det här steget måste du även ange ett exportlösenord när du uppmanas till det.
openssl pkcs12 -export -in cert.pem -inkey key.pem -name jwtcert >jwtcert.p12
Skapa java-nyckelbehållare baserat på pkcs12
Använd sedan följande kommando för att skapa en java-nyckelbehållare baserad på de pkcs12 som du just genererade. Under det här steget måste du även ange ett lösenord för målnyckelbehållare när du uppmanas till det. Dessutom måste du ange det tidigare exportlösenordet som källnyckelbehållarlösenord.
keytool -importkeystore -srckeystore jwtcert.p12 -destkeystore keystore.jks -srcstoretype pkcs12 -alias jwtcert
Bekräfta att ditt keystroke.jks innehåller ett jwtcert-alias
Använd sedan följande kommando för att bekräfta att keystroke.jks
innehåller ett jwtcert
-alias. Under det här steget uppmanas du att ange lösenordet för målnyckelbehållaren som skapades i det föregående steget.
keytool -keystore keystore.jks -list
Generera signerad token
Använd slutligen Java-klassens JWTExample nedan för att generera din signerade token.
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]
med ditt klient-ID.claimArray[1]
claimArray[1]
med användarnamnet Salesforce som är auktoriserat för appen.claimArray[2]
claimArray[2]
med din Salesforce-inloggnings-URL.claimArray[3]
claimArray[3]
med ett förfallodatum som är formaterat i millisekunder sedan epoktiden. 3660624000000
är till exempel 12-31-2085./path/to/keystore
/path/to/keystore
med rätt sökväg till din keystore.jkskeystorepassword
keystorepassword
med lösenordet för målnyckelbehållaren.privatekeypassword
privatekeypassword
med ditt källnyckellösenord.Nästa steg
När du har slutfört kravkonfigurationen för ditt Salesforce-konto kan du fortsätta att ansluta ditt Salesforce-konto till Experience Platform och importera dina CRM-data. Läs dokumentationen nedan för mer information:
Anslut Salesforce till Experience Platform med API:er
Dokumentationen nedan innehåller information om hur du ansluter Salesforce till Experience Platform med API:er eller användargränssnittet: