關於 Azure Logic Apps 中的連接器

當您使用 Azure Logic Apps 建置工作流程時,可以使用連接器來協助您快速且輕鬆地存取其他應用程式、服務、系統、通訊協定和平台中的資料、事件和資源,且通常不需要撰寫任何程式碼。 連接器提供的預先建置作業可讓您用作工作流程中的步驟。 Azure Logic Apps 提供您可以使用的數百種連接器。 如果沒有連接器可用於您想要存取的資源,則可以使用一般 HTTP 作業來與服務通訊,或者您也可以建立自訂連接器

此概觀提供連接器其及一般運作方式的高階簡介。 如需 Azure Logic Apps 中較熱門和常用連接器的相關資訊,請檢閱下列文件:

什麼是連接器?

在技術上,連接器是一種 Proxy,或基礎服務用來與 Azure Logic Apps 通訊的 API 包裝函式。 此連接器提供您在工作流程中用來執行工作的作業。 作業可作為觸發程序或動作,其中包含您可以設定的屬性。 例如,某些觸發程序和動作也要求您先建立和設定基礎服務或系統的連線,以便您可以驗證使用者帳戶的存取權。 如需概觀詳細資訊,請參閱連接器概觀,以了解 Azure Logic Apps、Microsoft Power Automate 和 Microsoft Power Apps

觸發程序

觸發程序會指定啟動工作流程的事件,且一律是任何工作流程中的第一個步驟。 每個觸發程序也會遵循特定的引發模式,以控制觸發程序如何監視和回應事件。 通常,觸發程序會遵循輪詢模式或推送模式,但有時兩個版本中皆提供觸發程序。

  • 輪詢觸發程序會定期依指定的排程檢查特定服務或系統,以檢查是否有新的資料或特定事件。 如果有新的資料可用,或發生特定事件,這些觸發程序會建立並執行工作流程的新執行個體。 接著,這個新執行個體可以使用傳遞為輸入的資料。

  • 推送觸發程序會接聽新的資料或事件發生,而不需輪詢。 當新的資料可用或發生特定事件時,這些觸發程序會建立並執行工作流程的新執行個體。 接著,這個新執行個體可以使用傳遞為輸入的資料。

例如,您可能會想要建置工作流程,以在檔案上傳至 FTP 伺服器時執行某些動作。 作為工作流程的第一個步驟,您可以使用名為新增或修改檔案時的 FTP 觸發程序,這會遵循輪詢模式。 然後,您可以指定排程以定期檢查上傳事件。

觸發程序也會沿著任何輸入和其他必要資料傳遞至您的工作流程,稍後的動作可以在工作流程中參考及使用該資料。 例如,假設您想要使用名為當新電子郵件送達時的 Office 365 Outlook 觸發程序,以在收到新電子郵件時啟動工作流程。 您可以設定此觸發程序,以傳遞來自每個新電子郵件的內容,例如寄件者、主旨行、本文、附件等。 然後,您的工作流程可以使用其他動作來處理該資訊。

動作

動作是遵循觸發程序的作業,且會在工作流程中執行某種工作。 您可以在工作流程中使用多個動作。 例如,您可以使用 SQL 觸發程序來啟動工作流程,以偵測 SQL 資料庫中的新客戶資料。 觸發之後,您的工作流程可以具有可取得客戶資料的 SQL 動作。 在 SQL 動作之後,您的工作流程可以具有另一個處理資料的動作,不一定是 SQL。

連接器類別

在 Azure Logic Apps 中,多數觸發程序和動作都可以在內建版本或受控連接器版本中使用。 這兩個版本都有一些觸發程序和動作可供使用。 可用版本取決於您建立在多租用戶Azure Logic Apps 中執行的取用邏輯應用程式,或是在單一租用戶 Azure Logic Apps 中執行的標準邏輯應用程式而有所不同。

  • 內建連接器會在 Azure Logic Apps 執行階段上以原生方式執行。

  • 受控連接器由 Microsoft 部署、裝載和管理。 這些連接器可為雲端服務和/或內部部署系統提供觸發程序和動作。

    在標準邏輯應用程式中,所有受控連接器都會組織為 Azure 連接器。 不過,在取用邏輯應用程式中,受控連接器會根據定價等級組織為標準企業

如需邏輯應用程式類型的詳細資訊,請檢閱資源類型和主機環境差異

連線設定

在取用邏輯應用程式中,您需要特定權限才能建立或管理邏輯應用程式及其連線。 如需這些權限的詳細資訊,請檢閱安全作業 - Azure Logic Apps中的安全存取和資料

在您可以於作流程中使用受控連接器的觸發程序或動作之前,許多連接器會要求您先建立目標服務或系統的連線。 若要從邏輯應用程式工作流程設計工具內建立連線,您必須使用帳號憑證 (和其他連線資訊) 來驗證身分識別。 例如,在工作流程可以存取和使用您的 Office 365 Outlook 電子郵件帳戶之前,您必須授權該帳戶的連線。 針對某些內建連接器和受控連接器,您可以設定並使用受控識別以進行驗證,而非提供您的認證。

儘管您在工作流程內建立連線,這些連線實際上會以自己的資源定義來分隔 Azure 資源。 若要檢閱這些連線資源定義,請根據您是否有取用或標準邏輯應用程式,遵循下列步驟:

連線安全性與加密

連線設定詳細資料,例如伺服器位址、使用者名稱和密碼、認證和祕密都會進行加密並儲存在受保護的 Azure 環境中。 這項資訊只能用於邏輯應用程式資源,以及由具有連線資源權限的用戶端使用,並使用連結存取檢查來強制執行。 使用 Azure Active Directory Open Authentication (Azure AD OAuth) 的連線,例如 Office 365、Salesforce 和 GitHub 會要求您登入,但 Azure Logic Apps 只會將存取和重新整理權杖儲存為祕密,而非登入認證。

只要該服務或系統允許,建立的連線就可以存取目標服務或系統。 對於使用 Azure AD OAuth 連線的服務,例如 Office 365 和 Dynamics,Azure Logic Apps 無限期地重新整理存取權杖。 其他服務可能會限制 Logic Apps 可以在不重新整理情況下使用權杖的時間長度。 某些動作如變更密碼,會使所有存取權杖失效。

提示

如果您的組織不允許透過 Azure Logic Apps 中的連接器存取特定資源,您可以封鎖使用 Azure 原則建立此類連線的功能。

如需保護邏輯應用程式和連線的詳細資訊,請檢閱 Azure Logic Apps 中的安全存取和資料

連線的防火牆存取

如果您使用限制流量的防火牆,且邏輯應用程式工作流程需要透過該防火牆進行通訊,則必須設定防火牆,以允許存取邏輯應用程式工作流程所在 Azure 區域中 Azure Logic Apps 平台或執行階段使用的輸入輸出 IP 位址。 如果您的工作流程也使用受控連接器 (例如 Office 365 Outlook 連接器或 SQL 連接器),或是使用自訂連接器,則防火牆也需要允許存取您邏輯應用程式的 Azure 區域中所有受控連接器輸出 IP 位址。 如需詳細資訊,請檢閱防火牆設定

週期行為

週期性內建觸發程序,例如週期觸發程序,在 Azure Logic Apps 執行階段上原生執行,而與週期性連線型觸發程序不同,例如您必須先建立連線的 Office 365 Outlook 連接器觸發程序。

針對這兩種觸發程序,如果週期未指定特定的開始日期和時間,則無論觸發程序的週期設定為何,第一個週期會在您儲存或部署邏輯應用程式時立即執行。 若要避免這種行為,請提供您希望第一個週期執行時的開始日期和時間。

某些受控連接器同時具有週期型和 Webhook 型觸發程序,因此如果您使用週期型觸發程式,請檢閱週期行為概觀

內建觸發程序的週期

週期性內建觸發程序會遵循您設定的排程,包含任何指定的時區。 不過,如果週期並未指定其他進階排程選項,例如執行未來週期的特定時間,則這些週期會以最後一個觸發程序執行為基礎。 因此,這些週期的開始時間可能會因為儲存體呼叫期間延遲等因素而漂移。

如需詳細資訊,請參閱下列文件:

連線型觸發程序的週期

在週期性連線型觸發程序中,例如 Office 365 Outlook,排程不是控制執行的唯一驅策因素。 時區只會決定初始開始時間。 後續執行取決於週期排程、上次觸發程序執行,以及可能導致執行階段漂移或產生非預期行為的其他因素,例如:

  • 無論觸發程序是否存取具有更多資料的伺服器,觸發程序會立即嘗試擷取。
  • 觸發程序所產生的任何失敗或重試。
  • 儲存體呼叫期間的延遲。
  • 當日光節約時間 (DST) 開始和結束時,系統不會維護指定的排程。
  • 下一次執行階段發生時可能產生影響的其他因素。

如需詳細資訊,請參閱下列文件:

針對週期性問題進行疑難排解

若要確定您的工作流程是在指定的開始時間執行,且不會錯過週期,特別是當頻率為天數或更長時,請嘗試下列解決方案:

  • 當 DST 生效時,請手動調整週期,讓您的工作流程在預期的時間繼續執行。 否則,當 DST 啟動時,開始時間會向前移位一小時,而 DST 結束時則會向後移位一小時。 如需詳細資訊和範例,請檢閱日光節約時間和標準時間的週期

  • 如果您使用週期觸發程序,請指定時區、開始日期和開始時間。 此外,請設定特定時間,以在屬性 [在這幾小時內] 和 [在這幾分鐘內] 中執行後續的週期,這些時間僅適用於 [日] 和 [週] 頻率。 不過,某些時間範圍可能會在時間移位時造成問題。

  • 請考慮使用滑動視窗觸發程序,而非週期觸發程序,以避免遺漏的週期。

自訂連接器和 API

在多組織用戶 Azure Logic Apps 中執行的取用邏輯應用程式中,您可以呼叫非立即可用連接器的 Swagger 型或 SOAP 型 API。 您也可以透過建立自訂 API Apps 來執行自訂程式碼。 如需詳細資訊,請參閱下列文件:

在單一租用戶 Azure Logic Apps 中執行的標準邏輯應用程式中,您可以建立可用於任何標準邏輯應用程式的原生執行服務提供者型自訂內建連接器。 如需詳細資訊,請參閱下列文件:

ISE 和連接器

對於需要直接存取 Azure 虛擬網路中資源的工作流程,您可以建立專用整合服務環境 (ISE),以在專用資源上建置、部署和執行工作流程。 如需有關建立 ISE 的詳細資訊,請檢閱從 Azure Logic Apps 連線至 Azure 虛擬網路

在 ISE 內建立的自訂連接器不適用於內部部署資料閘道。 不過,這些連接器可以直接存取連線至裝載 ISE 的 Azure 虛擬網路中內部部署資料來源。 因此,ISE 中的邏輯應用程式在與這些資源通訊時,很可能不需要資料閘道。 如果您在需要內部部署資料閘道的 ISE 外部建立自訂連接器,ISE 中的邏輯應用程式可以使用這些連接器。

在工作流程設計工具中,當您瀏覽要用於 ISE 中邏輯應用程式的內建連接器或受控連接器時,CORE 標籤會出現在內建連接器上,而 ISE 標籤會出現在設計為搭配使用 ISE 的受控連接器上。

Example CORE connector

CORE

具有此標籤的內建連接器會在與您邏輯應用程式相同的 ISE 中執行。

Example ISE connector

ISE

具有此標籤的受控連接器會在與您邏輯應用程式相同的 ISE 中執行。

如果您有連線至 Azure 虛擬網路的內部部署系統,ISE 可讓您的工作流程直接存取該系統,而不需要使用內部部署資料閘道。 相反地,如果有的話,您可以使用系統的 ISE 連接器、HTTP 動作或自訂連接器

針對沒有 ISE 連接器的內部部署系統,請使用內部部署資料閘道。 若要尋找可用的 ISE 連接器,請檢閱 ISE 連接器

Example non-ISE connector

沒有標籤

您可以繼續使用所有其他沒有標籤的連接器,以在全域的多組織用戶 Logic Apps 服務中執行。

已知問題

下表包含 Logic Apps 連接器的已知問題。

錯誤訊息 描述 解決方案
Error: BadGateway. Client request id: '{GUID}' 此錯誤會導致更新邏輯應用程式上的標記,其中一或多個連線不支援 Azure Active Directory (Azure AD) OAuth 驗證,例如 SFTP ad SQL,因為會中斷這些連線。 若要避免此行為,請避免更新這些標記。

後續步驟