查看 Application Integration 支援的連接器

Salesforce 觸發條件

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

詳情請參閱下列教學課程:

事前準備

本節將說明連結及設定 Salesforce 執行個體的必要步驟,以便使用變更資料擷取 (CDC) 平台事件,以發布/訂閱方式將變更串流至 Application Integration。在應用程式整合中設定任何 Salesforce 相關工作或觸發條件之前,請先完成下列步驟:

設定整合使用者

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

  1. 使用 sysadmin 憑證登入 Salesforce 執行個體。
  2. 按一下「齒輪」圖示,然後選取「設定」,如下圖所示: 顯示「設定」頁面的圖片顯示「設定」頁面的圖片
  3. 在「管理」選單中,依序點選「使用者」>「使用者」
  4. 在「使用者」窗格中,選取「新增使用者」按鈕。
  5. 在「User Edit」(編輯使用者) 對話方塊中,填入下列詳細資料:
    1. 名字:整合使用者的名字。
    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. 選取「物件權限」的核取方塊來啟用權限。 建議使用「讀取」和「查看全部」
  7. 選取對應的核取方塊,為每個物件欄位授予「讀取存取權」或「編輯存取權」
  8. 捲動到頁面頂端,然後按一下「儲存」

設定安全權杖

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

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

  1. 使用上一個步驟中設定的使用者名稱和密碼,以整合使用者的身分登入 Salesforce。
  2. 在主選單中按一下個人資料相片,然後按一下「設定」
  3. 在「設定」選單中,選取「重設我的安全權杖」,開啟「重設安全權杖」窗格。
  4. 按一下「重設安全權杖」按鈕。
  5. 檢查與整合使用者相關聯的電子郵件帳戶,找出內含新安全權杖的電子郵件。 記下新的安全權杖,後續步驟會用到。
  6. (選用) 如要為權限集啟用「僅限 API 使用者」權限,請按照上方「設定權限集」一節的說明,在「系統權限」中啟用這項權限。

建立已連結的應用程式

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

請按照下列步驟設定已連結的應用程式:

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

使用 CDC 事件的事前準備步驟

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

  1. sysadmin身分登入 Salesforce。
  2. 按一下「齒輪」圖示,然後點選「設定」
  3. 使用左側導覽列,搜尋並選取「變更資料擷取」
  4. 在「變更資料擷取」設定頁面中,找出要使用的 Salesforce 物件,然後從「可用實體」欄拖曳至「選取實體」欄。
  5. 按一下 [儲存]

使用平台事件的必要步驟

如要設定 Application Integration 觸發條件以使用平台事件,請先在 Salesforce 中完成下列步驟:

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

建立平台事件

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

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

    圖片:顯示已儲存的平台活動詳細資料圖片:顯示已儲存的平台活動詳細資料

    更新平台事件的權限

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

    如要更新權限,請按照下列步驟操作:

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

    新增 Salesforce 觸發條件

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

      前往「Application Integration」

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

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

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

      如要建立新的整合項目:

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

    4. 整合編輯器的導覽列中,按一下「Tasks」(工作),即可查看可用工作和連結器的清單。
    5. 選取現有的整合服務,或按一下「建立整合服務」
    6. 在整合服務編輯器中,依序點選「+ Add a task/trigger」>「Triggers」,即可查看可用觸發條件
    7. 按一下「Salesforce trigger」(Salesforce 觸發條件) 元素,然後放置到設計工具中。

    設定 Salesforce 觸發條件

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

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

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

    3. 從「Salesforce channel configuration」(Salesforce 管道設定) 下拉式選單中選取 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 網域:輸入執行個體的服務授權。您可以在 Salesforce 帳戶中找到網域。例如:instance.my.salesforce.com。下圖顯示 Salesforce 網域:

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

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

        如果沒有驗證設定檔,請建立新的設定檔,驗證類型為 OAuth 2.0 資源擁有者密碼憑證。如需欄位相關資訊,請參閱「OAuth 2.0 資源擁有者密碼憑證」。 請為 Salesforce 執行個體輸入下列值:

        • 用戶端 ID:輸入您在設定連結的應用程式時記下的用戶端金鑰。
        • 密鑰:輸入您在設定連結的應用程式時記下的消費者密鑰。
        • 密碼:USER_PASSWORDSECURITY_TOKEN 格式輸入使用者密碼。取代下列項目:
          • USER_PASSWORD:Salesforce 使用者密碼。
          • SECURITY_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 管道設定) 對話方塊中,輸入「Salesforce object name」(Salesforce 物件名稱) 屬性的物件名稱。

      如需 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 萬個事件。詳情請參閱「平台事件分配」。選擇整合觸發條件的 CDC 事件前,請先與 Salesforce 管理員聯絡,瞭解授權限制。
    • 如果您打算大量上傳資料至 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 產品。由於這項依附元件位於 Application Integration 外部,因此只有在 Salesforce 觸發程序成功啟動 active 整合的執行作業時,Application Integration 服務水準協議 (SLA) 條款及細則才適用。

    定價

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

    配額與限制

    如要瞭解配額和限制,請參閱配額和限制

    後續步驟