在 Azure Logic Apps 中建立工作流程輸入的跨環境參數

適用於:Azure Logic Apps (使用量 + 標準)

在 Azure Logic Apps 中,您可以藉由定義參數來抽象化在整個開發、測試和生產環境的工作流程中可能會變更的值。 使用參數而非環境特定變數時,您可以一開始更專注於設計工作流程,並在稍後插入您的環境特定變數。

本文介紹如何針對多租用戶取用邏輯應用程式工作流程及單一租用戶標準邏輯應用程式工作流程建立、使用和編輯參數。 您也將了解如何管理環境變數。

如需多租用戶和單一租用戶 Azure Logic Apps 的詳細資訊,請檢閱 Azure Logic Apps 的單一租用戶與多租用戶與整合服務環境

必要條件

取用與標準邏輯應用程式工作流程的參數

針對取用和標準邏輯應用程式工作流程,您可以使用設計工具定義參數。 定義參數之後,您可以從相同邏輯應用程式資源中的任何工作流程或連線參考該參數。

在多租用戶取用邏輯應用程式工作流程中,當您在設計工具中建立和使用參數之後,您可以在 Azure Resource Manager 範本 (ARM 範本) 和範本參數檔案中定義和設定環境變數。 在此案例中,您必須在部署時定義和設定參數,這表示即使您只需要變更一個變數,您仍必須重新部署邏輯應用程式的 ARM 範本。

在單一租用戶標準邏輯應用程式工作流程中,您可以使用參數應用程式設定,在執行階段和部署中使用環境變數。 應用程式設定包含相同邏輯應用程式資源中所有工作流程的全域設定選項。 如需詳細資訊,請參閱編輯單一租用戶型邏輯應用程式的主機和應用程式設定

注意

在標準邏輯應用程式工作流程中,不支援安全資料類型,例如 securestringsecureobject。 不過,您也可以使用應用程式設定搭配 Azure Key Vault 作為替代選項。 然後您可以直接參考安全字串,例如連接字串和金鑰。 類似於您可以於部署期間定義環境變數的 ARM 範本,您可以在邏輯應用程式工作流程定義中定義應用程式設定。 然後,您可以擷取動態產生的基礎結構值,例如連線端點、儲存體字串等等。

不過,應用程式設定有大小限制,而且無法從 Azure Logic Apps 中的特定區域參考。 參數提供比應用程式設定更廣泛的使用案例,例如支援大型值大小和複雜物件。

例如,如果您使用 Visual Studio Code 作為本機開發工具在本機執行工作流程,請在邏輯應用程式專案中,使用 parameters.json 檔案來定義參數。 然後,您可以從專案 workflow.json 檔案中的任何工作流程,或從您專案 connections.json 檔案中的任何連線物件來參考此參數檔案中的任何參數。 下列清單描述幾個常見的使用案例:

  • 擁有測試參數檔案,其中包含您在測試期間使用的所有值。 部署時,您可以以您的生產參數檔案來取代測試參數檔案。

  • connections.json 檔案的不同部分參數化。 接著,您可以將 connections.json 檔案簽入原始檔控制,然後透過 parameters.json 檔案管理任何連線。

  • 將複雜物件 (例如 authentication JSON 物件)參數化。 例如,您可以將 authentication 物件值取代為保存單一參數運算式的字串,例如 @parameters('api-auth')

  • 檢閱和編輯您專案的 local.settings.json 檔案中的應用程式設定。 然後,您可以在參數中參考這些應用程式設定。

注意

作為一般建議,請考量使用參數作為將值參數化的預設方式,而不是應用程式設定。 如此一來,當您需要儲存安全金鑰或字串時,您可以遵循建議透過參數參考應用程式設定。 如有需要,您可以使用參數來參考應用程式設定,在解決方案中同時使用這兩個選項。

定義、使用和編輯參數

Azure 入口網站

  1. Azure 入口網站中,開啟您的邏輯應用程式工作流程。 在 [工作流程] 下,於設計工具中選取並開啟您的工作流程。

  2. 從設計工具的工具列,選取 [參數]

    Screenshot showing Azure portal, designer for Consumption workflow, and

  3. 在 [參數] 窗格上,選取 [新增參數]

  4. 提供關於要建立的參數的下列資訊:

    屬性 必要 描述
    名稱 Yes 要建立的參數名稱。
    類型 Yes 參數的資料類型,例如 ArrayBoolFloatIntObjectSecure ObjectSecure StringString
    預設值 Yes 參數的預設值。 您必須指定預設參數值,因為工作流程邏輯、連接資訊和參數值不存在於單一位置。 設計工具必須先能夠解析參數值,才能載入。

    重要事項:針對 Secure ObjectSecure String 資料類型,請避免設定預設值,因為該值會儲存為純文字。
    實際值 No 參數的實際值。

    下列範例顯示字串參數的定義:

    Screenshot showing Azure portal, designer for Consumption workflow, and the

  5. 如果您有更多要新增的參數,請選取 [新增參數]。 否則,請關閉參數窗格,但請務必儲存工作流程以儲存您的新參數定義。

  6. 若要從相同工作流程中的觸發或動作參考參數,請遵循下列步驟:

    1. 在設計工具中,開啟您想要的工作流程,然後展開觸發或動作。

    2. 在您想要使用該參數的屬性中,於該屬性的編輯方塊內按一下。

    3. 從開啟的動態內容清單中,於 [參數] 底下選取您先前建立的參數,例如:

      Screenshot showing designer for Consumption workflow and example action with the cursor in property edit box, expanded dynamic content list, and previously created parameter selected.

  7. 若要在邏輯應用程式工作流程中檢視或編輯參數,請遵循下列步驟:

    1. 在設計工具中開啟邏輯應用程式工作流程。 在設計工具的工具列上,選取 [參數]

      [參數] 窗格會隨即開啟,並顯示您為該工作流程定義的所有參數。

    2. 進行編輯、關閉參數窗格,並儲存您的邏輯應用程式工作流程。

下一步