使用 Azure Data Factory 或 Synapse Analytics 從 Salesforce 行銷雲端複製資料
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
本文概述如何使用 Azure Data Factory 或 Synapse Analytics 管線中的複製活動,藉以從 Salesforce 行銷雲端複製資料。 本文是根據複製活動概觀一文,該文提供複製活動的一般概觀。
支援的功能
此 Salesforce Marketing Cloud 連接器支援下列功能:
支援的功能 | IR |
---|---|
複製活動 (來源/-) | 4.9 |
查閱活動 | 4.9 |
① Azure 整合執行階段 ② 自我裝載整合執行階段
如需支援做為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。
該 Salesforce 行銷雲端連接器支援 OAuth 2 驗證,並支援舊版和增強套件類型。 連接器建置於 Salesforce Marketing Cloud REST API 之上。
注意
此連接器不支援擷取檢視、自訂物件或自訂資料延伸模組。
開始使用
您可以使用 .NET SDK、Python SDK、Azure PowerShell、REST API 或 Azure Resource Manager 範本來建立具有複製活動的管線。 如需建立內含複製活動之管線的逐步指示,請參閱複製活動教學課程。
使用 UI 建立 Salesforce 行銷雲端的連結服務
使用下列步驟,在 Azure 入口網站 UI 中建立 Salesforce 行銷雲端的連結服務。
前往 Azure Data Factory 或 Synapse 工作區的 [管理] 索引標籤,選取 [連結服務],然後按一下 [新增]:
搜尋 Salesforce,然後選取 Salesforce 行銷雲端連接器。
設定服務詳細資料,測試連線,然後建立新的連結服務。
注意
Salesforce Marketing Cloud 上的 API 整合範圍必須設定為 Hub | 活動 | 讀取以讓連接器成功。
連接器設定詳細資料
下列各節提供屬性的相關詳細資料,這些屬性是用來定義 Salesforce Marketing Cloud 連接器專屬的 Data Factory 實體。
連結服務屬性
以下是針對 Salesforce Marketing Cloud 已連結服務支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 類型屬性必須設為:SalesforceMarketingCloud | Yes |
connectionProperties | 定義如何連線至 Salesforce 行銷雲端的屬性群組。 | Yes |
在 connectionProperties 之下: |
||
authenticationType | 指定要使用的驗證方法。 允許值為Enhanced sts OAuth 2.0 或OAuth_2.0 。Salesforce 行銷雲端舊版套件僅支援 OAuth_2.0 ,增強套件則需要Enhanced sts OAuth 2.0 。 自 2019 年 8 月 1 日起,Salesforce 行銷雲端已移除建立舊版套件的能力。 所有新的套件皆為增強套件。 |
Yes |
host | 針對增強套件,主機應為您的子網域,其以字母「mc」(例如 mc563885gzs27c5t9-63k636ttgm ) 開頭的 28 個字元字串來表示。 針對舊版套件,則指定 www.exacttargetapis.com 。 |
Yes |
clientId | 與 Salesforce Marketing Cloud 應用程式相關聯的用戶端識別碼。 | Yes |
clientSecret | 與 Salesforce Marketing Cloud 應用程式相關聯的用戶端密碼。 您可以選擇將此欄位標記為 SecureString 以將其安全儲存於該服務中,或將密碼儲存於 Azure Key Vault,然後在執行資料複製時,讓服務複製活動並從該處提取;如需深入了解,請參閱 在 Key Vault 中儲存的認證。 | Yes |
useEncryptedEndpoints | 指定是否使用 HTTPS 來加密資料來源端點。 預設值為 True。 | No |
useHostVerification | 指定在透過 TLS 連線時,是否要求伺服器憑證中的主機名稱符合伺服器的主機名稱。 預設值為 True。 | No |
usePeerVerification | 指定在透過 TLS 連線時,是否要驗證伺服器的身分識別。 預設值為 True。 | No |
範例:針對增強套件來使用增強 STS OAuth 2 驗證
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"connectionProperties": {
"host": "<subdomain e.g. mc563885gzs27c5t9-63k636ttgm>",
"authenticationType": "Enhanced sts OAuth 2.0",
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
範例:針對舊版套件來使用 OAuth 2 驗證
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"connectionProperties": {
"host": "www.exacttargetapis.com",
"authenticationType": "OAuth_2.0",
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
如果您使用具有下列所承載的 Salesforce 行銷雲端連結服務,其仍然如同現狀為已支援,不過建議您使用新版本來進行,如此能新增增強套件的支援。
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
資料集屬性
如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 Salesforce Marketing Cloud 資料集所支援的屬性清單。
若要從 Salesforce Marketing Cloud 複製資料,請將資料集的類型屬性設定為 SalesforceMarketingCloudObject。 以下是支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 該資料集類型屬性必須設定為:SalesforceMarketingCloudObject | Yes |
tableName | 資料表的名稱。 | 否 (如果已指定活動來源中的「查詢」) |
範例
{
"name": "SalesforceMarketingCloudDataset",
"properties": {
"type": "SalesforceMarketingCloudObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<SalesforceMarketingCloud linked service name>",
"type": "LinkedServiceReference"
}
}
}
複製活動屬性
如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 Salesforce Marketing Cloud 來源所支援的屬性清單。
Salesforce Marketing Cloud 作為來源
若要從 Salesforce Marketing Cloud 複製資料,請將複製活動中的來源類型設定為 SalesforceMarketingCloudSource。 複製活動的 source 區段支援下列屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 複製活動來源的類型屬性必須設定為:SalesforceMarketingCloudSource | Yes |
query | 使用自訂 SQL 查詢來讀取資料。 例如: "SELECT * FROM MyTable" 。 |
否 (如果已指定資料集中的 "tableName") |
範例:
"activities":[
{
"name": "CopyFromSalesforceMarketingCloud",
"type": "Copy",
"inputs": [
{
"referenceName": "<SalesforceMarketingCloud input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "SalesforceMarketingCloudSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
注意
不支援連絡人資料表。
查閱活動屬性
若要了解屬性的詳細資料,請參閱查閱活動。
相關內容
如需複製活動支援作為來源和接收器的資料存放區清單,請參閱支援的資料存放區。