查看 Application Integration 支援的連接器

Salesforce 觸發條件

Salesforce 觸發條件可讓您監聽 變更資料擷取 (CDC)企業訊息平台 事件。有了這個觸發條件,您就可以根據任何 CDC 事件 (建立、更新、刪除或取消刪除) 或 Salesforce 執行個體中的平台事件,啟動整合作業。

如需更多資訊,請參閱下列教學課程:

事前準備

本節將概略說明連結及設定 Salesforce 執行個體所需的步驟,以便使用 變更資料擷取 (CDC) Platform 事件,以 Pub/Sub 方式串流應用程式整合的變更。在應用程式整合中設定任何與 Salesforce 相關的工作或觸發事件前,必須先完成下列步驟:

設定整合使用者

請按照下列步驟設定整合使用者:

  1. 使用 sysadmin 憑證登入 Salesforce 執行個體。
  2. 按一下「齒輪」圖示,然後選取「設定」,如下圖所示: 顯示設定頁面的圖片顯示設定頁面的圖片
  3. 依序按一下「管理」選單中的「使用者」>「使用者」
  4. 在「使用者」窗格中,選取「新增使用者」按鈕。
  5. 在「User Edit」對話方塊中,填入下列詳細資料:
    1. First Name:整合使用者的名字。
    2. 姓氏:整合使用者的姓氏。
    3. 電子郵件地址:整合使用者的電子郵件地址。建議您使用群組電子郵件。
    4. 使用者名稱:符合任何機構層級命名慣例的使用者名稱。

      如要建立新的整合使用者,請使用下列格式: EMAIL.SALESFORCE_ORG_NAME.SANDBOX_NAME

      如果您已有整合使用者,請確認輸入的使用者名稱是否正確。

    5. 角色:從下拉式選單中選取選項。
    6. 使用者授權:輸入 Salesforce,如果使用的是試用版機構,則輸入 Salesforce Platform
    7. 設定檔:從下拉式選單中選取整合使用者的權限設定檔。

      建議您指派沒有權限的設定檔,以免整合使用者未經授權就存取 Salesforce。

    8. 按一下 [儲存]
  6. 如要更新新整合使用者的密碼,請按照下列步驟操作:
    1. 按一下「使用者」窗格中的「重設密碼」按鈕。系統會將密碼重設電子郵件傳送至與使用者相關聯的電子郵件地址。
    2. 按照電子郵件帳戶中的重設密碼流程操作。請記下新密碼,後續步驟會用到。

設定權限集

如果您已具備適合整合使用者的權限集存取權,可以略過這個步驟,直接進行「設定安全性權杖」作業。否則,請按照下列步驟為整合使用者和 Salesforce 物件設定權限集。

如要為整合使用者設定權限集:

  1. 在「設定」選單中,依序點選「使用者」>「權限組合」
  2. 在「權限集合」窗格中,按一下「新增」按鈕。
  3. 在「權限集合」對話方塊中輸入下列詳細資料:
    • 標籤:輸入權限集合的名稱。
    • 授權:在「授權」下拉式選單中選取「Salesforce」
    • 按一下 [儲存]
  4. 在「系統」設定選項清單中,向下捲動並選取「系統權限」
  5. 在「系統權限」頁面中,按一下「編輯」按鈕。
  6. 向下捲動可用權限清單,然後選取「API 已啟用」核取方塊。

    您也必須具備「Api Only User」權限,但必須先重設必要的安全性權杖,才能啟用這項權限。這項權限會在後續步驟中新增。

  7. (選用) 捲動並選取「修改所有資料」 和「查看所有資料」 (如適用)。 這些權限並非必要,但如果您想自動授予整合使用者新物件的存取權,這些權限就很實用。建議您只在沙箱中啟用這些權限進行測試。
  8. 捲動至權限清單頂端,然後按一下「儲存」
  9. 確認設定無誤,然後按一下「儲存」

如要為 Salesforce 物件設定權限集,請按照下列步驟操作:

  1. 按一下「權限集合總覽」,即可返回「權限集合」設定頁面。
  2. 在「權限集」窗格中的「應用程式」部分,選取「物件設定」
  3. 向下捲動並選取需要權限集的 Salesforce 物件。 本範例使用 Opportunity 物件。
  4. 按一下物件詳細資料頁面上的「編輯」按鈕。
  5. 選取記錄類型的核取方塊。如果您知道需要哪些記錄類型,請選取這些類型。如果不確定需要哪些記錄類型,請全部選取。
  6. 勾選要啟用的「物件權限」核取方塊。 建議您選取「Read」和「View All」
  7. 選取對應的核取方塊,為每個物件欄位授予「讀取權限」或「編輯權限」
  8. 捲動到頁面頂端,然後按一下「儲存」

設定安全性權杖

如果您先前已為整合使用者建立安全性權杖,並重設密碼,系統會自動傳送內含新安全性權杖的電子郵件。您可以使用新的權杖,然後跳至「建立已連結的應用程式」一節。

否則,請按照下列步驟重設整合使用者的安全性權杖:

  1. 使用上一個步驟中設定的使用者名稱和密碼,以整合使用者身分登入 Salesforce。
  2. 在主選單中,依序按一下個人資料相片和「設定」
  3. 在「設定」選單中,選取「重設我的安全性權杖」,開啟「重設安全性權杖」窗格。
  4. 按一下「重設安全性權杖」按鈕。
  5. 請查看與整合使用者相關聯的電子郵件帳戶,找出含有新安全性權杖的電子郵件。記下新的安全性權杖,後續步驟會用到。
  6. (選用) 為權限組合啟用「系統權限」中的「Api User Only」權限,如上述「設定權限組合」所述。

建立連結應用程式

您必須具備系統管理員權限,才能設定連結應用程式。如果您目前以整合使用者的身分登入,請務必登出,然後以 sysadmin 的身分重新登入。

請按照下列步驟設定 Connected App:

  1. 按一下「齒輪」圖示,然後選取「設定」
  2. 在「設定」選單中搜尋並選取「應用程式管理工具」,如下圖所示: 顯示設定頁面的圖片顯示設定頁面的圖片
  3. 按一下「新增已連結的應用程式」
  4. 在設定窗格中提供下列詳細資料:
    • 已連結的應用程式名稱:輸入已連結應用程式的名稱。
    • API 名稱:輸入 API 名稱。
    • 聯絡電子郵件:輸入已連結應用程式的電子郵件地址,最好是群組電子郵件別名。
    • API (啟用 OAuth 設定):選取「啟用 OAuth 設定」。接著,設定下列項目:
      1. (選用) 回呼網址:只有在您希望外部服務執行驗證時,才需要這項資訊。如果您選擇提供回呼,請務必加入 http(s):// 前置字元。
      2. 所選 OAuth 範圍:選取:
        • 存取及管理資料 (API)
        • 隨時代表您執行要求 (refresh_token、offline_access)
  5. 按一下 [儲存]
  6. 按一下「繼續」。您必須使用系統傳送至電子郵件地址的驗證碼重新授權。
  7. 驗證代碼成功後,下一頁會顯示消費者密鑰消費者金鑰。請記下這些值,因為在設定應用程式整合的 Auth 模組時,系統會使用這些值。
  8. 按一下「管理」按鈕。
  9. 進入「已連結的應用程式詳細資料」頁面後,按一下「編輯政策」按鈕。
  10. 在「OAuth 政策」部分,將「允許的使用者」下拉式選單中的值變更為「管理員核准的使用者已預先授權」
  11. 按一下 [儲存]
  12. 捲動至頁面中的「Profiles」和「Permission Sets」部分,選取要套用至已連結應用程式的設定檔或權限集。
  13. 選取所需設定檔或權限組合。
  14. 按一下 [儲存]

使用 CDC 事件的先決步驟

在設定應用程式整合觸發條件以使用 CDC 事件之前,請務必在 Salesforce 中將已設定的物件新增至 CDC:

  1. sysadmin 身分登入 Salesforce。
  2. 按一下「齒輪」圖示,然後點選「設定」
  3. 在左側導覽面板中搜尋並選取「Change Data Capture」
  4. 在「Change Data Capture」設定頁面中,找出您想在「Available Entities」欄中使用的 Salesforce 物件,然後將其拖曳至「Selected Entities」欄。
  5. 按一下 [儲存]

使用平台事件的必要步驟

設定應用程式整合觸發條件以使用平台事件前,請先在 Salesforce 中完成下列步驟:

  • 建立平台事件
  • 更新平台事件的權限

建立平台事件

如要建立平台事件,請執行下列步驟:

  1. 使用 sysadmin 憑證登入 Salesforce 執行個體。
  2. 按一下「齒輪」圖示,然後選取「設定」
  3. 在導覽面板中搜尋「平台」,然後按一下「平台事件」
  4. 顯示新平台事件的圖片顯示新平台事件的圖片
  5. 在「平台事件」頁面中,按一下「新增平台事件」,然後設定下列屬性:
  • 標籤
  • 複數標籤
  • 物件名稱(這個欄位會自動填入)
  • 發布行為 選取下列任一值:
    • 發布後提交:如果不符合條件,就會還原事件串流。
    • 立即發布:立即觸發事件,不必等待任何驗證。
    如要進一步瞭解發布行為,請參閱「 平台事件和交易」。
  • 部署狀態 (選用):如果事件已準備好部署,請選取「已部署」
  • 按一下 [儲存]
  • 圖片:顯示平台事件的標籤和發布行為設定圖片:顯示平台事件的標籤和發布行為設定
  • 建立自訂欄位。 如要建立自訂欄位,請在「自訂欄位和關聯」部分中點選「新增」,然後選取自訂欄位類型。您可以視需要建立多個自訂欄位。
  • 建立自訂欄位後,請在「平台事件」頁面中留意「API 名稱」欄位的值。物件名稱結尾為 _e,表示該物件是平台事件物件。CDC 物件的名稱結尾為 _c

    圖片:顯示已儲存平台事件的詳細資料圖片:顯示已儲存平台事件的詳細資料

    更新平台事件的權限

    您必須更新權限組合,讓整合使用者存取新建立的平台事件。

    如要更新權限,請執行下列步驟:

    1. 在「設定」選單中,依序點選「使用者」>「權限組合」
    2. 在「Permission Sets」頁面中,按一下先前建立的權限。
    3. 依序點選「物件設定」 > Plural Label of the Platform Event
    4. 在「物件權限」部分,啟用「讀取」和「建立」權限。
    5. 按一下 [儲存]
    6. 顯示平台事件權限的圖片顯示平台事件權限的圖片

    新增 Salesforce 觸發條件

    如要在新整合或現有整合中新增 Salesforce 觸發條件,請按照下列步驟操作:
    1. 前往 Google Cloud 控制台的「Application Integration」頁面。

      前往「應用程式整合」

    2. 在導覽選單中,按一下「整合」

      系統隨即會顯示「Integrations」頁面,列出 Google Cloud 專案中可用的所有整合項目。

    3. 選取現有的整合,或按一下「建立整合」來建立新的整合。

      如果您要建立新的整合功能:

      1. 在「Create Integration」窗格中輸入名稱和說明。
      2. 選取整合作業的區域。
      3. 選取要用於整合的服務帳戶。您隨時可以透過整合工具列的 「整合摘要」窗格,變更或更新整合作業的服務帳戶詳細資料。
      4. 按一下「建立」,新建立的整合服務會在整合服務編輯器中開啟。

    4. 整合編輯器的導覽列中,按一下「Tasks」,即可查看可用任務和連接器的清單。
    5. 選取現有的整合服務,或按一下「建立整合服務」
    6. 在整合服務編輯器中,依序點選「+ 新增任務/觸發條件」>「觸發條件」,即可查看可用的觸發條件
    7. 按一下並將 Salesforce 觸發條件元素放入設計工具。

    設定 Salesforce 觸發條件

    如要設定 Salesforce 觸發條件,請執行下列步驟:

    1. 按一下整合編輯器中的「Salesforce 觸發條件」,即可查看觸發條件設定窗格。
    2. 從「Salesforce 執行個體設定」下拉式選單中選取 Salesforce 執行個體。

      如果您沒有 Salesforce 執行個體,請建立新的執行個體。詳情請參閱「建立新的 Salesforce 執行個體」。

    3. 從「Salesforce channel configuration」下拉式選單中選取 Salesforce 管道。

      如果您沒有 Salesforce 管道,請建立新的管道。詳情請參閱「建立新的 Salesforce 管道」。

    4. 如果您選擇的事件類型為 CDC,請選取下列任一操作:
      • Create
      • Update
      • Delete
      • Undelete

      只有在發生特定作業或間隔作業時,觸發條件才會執行。

      Salesforce 觸發事件只能設定為單一作業。如果您想為多個作業執行觸發事件,請為每個作業建立 Salesforce 觸發事件

    建立新的 Salesforce 執行個體

    如要設定新的 Salesforce 執行個體,請執行下列步驟:

    1. 在觸發條件的可編輯屬性中,依序點選「選取 Salesforce 執行個體設定」 >「+ 新增 Salesforce 執行個體設定」
    2. 在「Add Salesforce instance configuration」對話方塊中,設定下列屬性:
      • Salesforce 執行個體連線名稱:輸入執行個體的名稱。

        設定完成後,您會使用這個名稱來指稱 Salesforce 例項。

      • Salesforce 網域:輸入執行個體的服務授權單位。您可以在 Salesforce 帳戶中找到該網域。例如:instance.my.salesforce.com。下圖顯示 Salesforce 網域:

        取得 Salesforce 執行個體中的 Salesforce 網域 取得 Salesforce 執行個體中的 Salesforce 網域

      • 驗證設定檔:選取驗證設定檔。

        如果您沒有驗證設定檔,請建立新的設定檔,並使用 OAuth 2.0 資源擁有者密碼憑證驗證類型。如要瞭解這些欄位的相關資訊,請參閱「OAuth 2.0 資源擁有者密碼憑證」。針對 Salesforce 例項,請輸入下列值:

        • 用戶端 ID:輸入您在設定已連結的應用程式時記下的用戶端金鑰。
        • 密鑰:輸入您在設定連結的應用程式時記下的消費者密鑰。
        • 密碼:輸入使用者密碼,格式為 USER_PASSWORDSECURITY_TOKEN。替換下列內容: 舉例來說,如果 USER_PASSWORDtest-password,而 SECURITY_TOKEN737K27NCa3O6,則密碼會是 test-password737K27NCa3O6
      • 下圖顯示建立驗證設定檔時需要填寫的欄位:

        OAuth 2.0 資源擁有者密碼憑證 OAuth 2.0 資源擁有者密碼憑證

      • Salesforce 機構 ID:輸入 Salesforce 執行個體的機構 ID。您可以向 Salesforce 系統管理員取得 ID。
    3. 按一下「新增」。

    建立新的 Salesforce 管道

    如要設定新的 Salesforce 管道,請執行下列步驟:

    1. 在觸發條件的可編輯屬性中,依序點選「選取 Salesforce 管道設定」 >「+ 新增 Salesforce 管道設定」
    2. 在「Add Salesforce channel configuration」對話方塊中,輸入「Salesforce object name」屬性的物件名稱。

      如需 Salesforce 物件清單,請參閱「Salesforce 中的標準物件」。如果不確定物件名稱,請與 Salesforce 系統管理員聯絡。

    3. 按一下「新增」。

    輸出變數

    Salesforce 觸發事件的回應會顯示在輸出變數中。

    下表說明 CDC 事件的輸出變數:

    變數 資料類型 說明
    SalesforceTriggerCdcPayload JSON 變更事件的詳細資料。
    SalesforceTriggerEvent JSON 包含事件的 replayId
    SalesforceTriggerSchema 字串 觸發條件結構定義。
    SalesforceTriggerCdcSnapshot JSON 變更事件後的物件快照。這個欄位僅適用於 UpdateCreate 作業。
    SalesforceTriggerCdcRecordId 字串 包含更新或新增記錄的 recordIdrecordId 是已變更的 Salesforce 物件 ID。

    下表說明 Platform 事件的輸出變數:

    變數 資料類型 說明
    SalesforceTriggerPEPayload JSON 變更事件的詳細資料。
    SalesforceTriggerEvent JSON 包含事件的 replayId
    SalesforceTriggerSchema 字串 觸發條件結構定義。
    這個觸發事件的輸出參數是 CdcTriggerPayload JSON 變數。JSON 變數包含更新的記錄物件。

    最佳做法

    如果您想使用 Salesforce 通知觸發整合,但不想編寫自訂程式碼來發布 Salesforce 事件,建議您使用 Salesforce 觸發條件。Salesforce 案件中的任何小型欄位變更都會觸發 Salesforce CDC 事件,進而觸發整合,這可能會導致大量整合雜訊。建議您使用變更事件篩選器,只篩選會觸發整合作業的必要 CDC 事件。使用變更事件篩選器可減少整合噪音,確保遵守您的授權限制。

    同樣地,如果不再需要整合,建議您取消發布使用此觸發事件的任何整合。在未取消發布或刪除前,整合會持續監聽 Salesforce CDC 和平台事件。

    注意事項

    使用 Salesforce 觸發條件執行整合前,請考量下列事項:

    • Salesforce 每天最多會傳送 10 萬個 CDC 和平台事件。如果您向 Salesforce 購買更多平台事件容量,每天可發布超過 1, 000 萬個事件。詳情請參閱「平台事件分配」。請先與 Salesforce 管理員聯絡,瞭解您的授權限制,再為整合觸發事件選擇 CDC 事件。
    • 如果您打算大量上傳至 Salesforce,請考慮暫停 CDC,以減少整合雜訊,並確保遵守授權限制。
    • Salesforce 可發布的事件訊息大小上限為 1 MB。詳情請參閱「變更資料擷取分配」。
    • 應用程式整合不支援下列區域的 Salesforce CDC 事件:
      • asia-northeast1
      • asia-south1
      • australia-southeast1
      • europe-west2
      • europe-west3
      • europe-west6
      • northamerica-northeast1
      • southamerica-east1
      • us-east4
      • us-west2

    「服務水準協議」排除條款

    Salesforce 觸發條件取決於 Salesforce 產品。由於此依附元件是應用程式整合的外部元件,因此只有在 Salesforce 觸發條件成功啟動 active 整合作業時,應用程式整合服務水準協議 (SLA) 的條款和細則才適用。

    定價

    您不需要建立連接器,即可使用 Cloud Pub/Sub 觸發條件和 Salesforce 觸發條件。不過,如果您使用連接器任務連結 Pub/Sub 或 Salesforce,系統會依連接器使用量向您收費。如需定價資訊,請參閱「Application Integration 定價」。

    配額與限制

    如要進一步瞭解配額和限制,請參閱「配額與限制」。

    後續步驟