以服務主體或管線負責人部署管線

委派的部署可以當作服務主體或管線階段負責人執行。 啟用時,管線階段將作為代理人 (服務主體或管線階段負責人),而不是要求的製作人進行部署。

使用服務主體進行部署

先決條件

  • Microsoft Entra 使用者帳戶。 如果您沒有,可以免費建立一個帳戶
  • 以下 Microsoft Entra 角色之一:全域系統管理員、雲端應用程式管理員或應用程式管理員。
  • 您必須是 Microsoft Entra ID 中企業應用程式 (服務主體) 的擁有者。

對於具有服務主體的委派部署,請執行下列步驟。

  1. 在 Microsoft Entra 識別碼中建立企業應用程式 (服務主體)。

    重要

    任何在管道中啟用或修改服務主體設定的人都必須是 Microsoft Entra ID 中企業應用程式 (服務主體) 的擁有者。

  2. 將企業應用程式做為伺服器到伺服器 (S2S) 使用者新增至管線主機環境及其部署到的每個目標環境。

  3. 將部署管線管理員資訊安全角色指派給管線主機中的 S2S 使用者,以及目標環境中的系統管理員資訊安全角色。 較低權限的資訊安全角色無法部署外掛程式和其他程式碼元件。

  4. 在管線階段選擇 (勾選) 委派部署,選取服務主體,然後輸入 [用戶端識別碼]。 選取儲存

  5. 在管線主機環境中建立雲端流程。 您可以使用管線的 Microsoft Dataverse API 來整合替代的系統。

  6. 選取 OnApprovalStarted 觸發程序。

  7. 為您所需的自訂邏輯新增步驟。

  8. 插入核准步驟。 使用動態內容將部署要求資訊傳送給核准者。

  9. 插入條件。

  10. 為服務主體建立 Dataverse 連線。 您需要用戶端識別碼和密碼。

  11. 使用如下所示的設定新增 Dataverse 執行未繫結動作
    動作名稱:UpdateApprovalStatus ApprovalComments:插入動態內容。 部署要求者可以看到評論。 ApprovalStatus:20 = 已核准,30 = 已拒絕 ApprovalProperties:插入動態內容。 可以從管線主機中存取管理資訊。

    重要

    UpdateApprovalStatus 動作必須使用服務主體的連線。

    與服務主體連線

    提示

    若要改善偵錯體驗,請選取 ApprovalProperties 並從動態內容功能表插入工作流程 ()。 這會將流程執行連結到管線階段執行 (執行歷程記錄)。

  12. 儲存,然後測試管線。

以下是規範核准流程的螢幕擷取畫面。

Canonical 核准流程

重要

  • 要求製作者可能無法存取目標環境中已部署的資源。 資源可以在部署後共用。 若要讓共用自動進行,您可以使用以下範例或 ALM 加速器擴充功能做為參考實作。
  • 若要部署連接參考和存取環境,必須至少要有基本使用者資訊安全角色。
  • 測試時,如果您移除自己的資訊安全角色,則需要其他管理員稍後將其還原。 Power Platform 管理員可以在傳統體驗中還原自己的資訊安全角色。

以管線階段負責人身分進行部署

一般使用者 (包括用作服務帳戶的使用者) 也可以充當代理人。 與服務主體相比,設定更為簡單,但是不能部署包含 oAuth 連線的連接參考的解決方案。

若要作為管線階段負責人進行部署,請依照以下步驟操作。

  1. 將部署管線管理員資訊安全角色指派給管線主機中的管線階段負責人,並在目標環境中指派系統管理員資訊安全角色。

    較低權限的資訊安全角色無法部署外掛程式和其他程式碼元件。

  2. 以管線階段擁有者身分登入。 只有擁有者才能啟用或修改這些設定。 不允許團隊所有權。

  3. 在管線階段選取委派部署,然後選取階段負責人

    • 管線階段負責人的身份會用於此階段的所有部署。
    • 同樣,必須使用此身分來核准部署。
  4. 在管線主機環境中的解決方案中建立雲端流程。

    1. 選取 OnApprovalStarted 觸發程序。
    2. 視需要插入動作。 例如核准。
    3. 新增 Dataverse 執行未繫結動作
      動作名稱:UpdateApprovalStatus (20 = 已完成,30 = 已拒絕)

委派部署範例

重要

這些範例中提供的功能現在在產品中獲得原生支持,但在您所在的地區可能尚不可用。

此下載包含範例雲端流程,用於管理已核准並共用目標環境中部署的畫布應用程式和流程。 下載範例解決方案

下載受管理的解決方案並將其匯入到您的管線主機環境。 然後可以自訂該解決方案以滿足您組織的需求。

常見問題

我收到錯誤 部署階段不是服務主體 (<AppId>) 的擁有者。只有服務主體的擁有者才能將其用於委託部署。

確保您是 Microsoft Entra ID (以前稱為 Azure AD) 中企業應用程式 (服務主體) 的擁有者。 您可能只是應用程式註冊的擁有者,而不是企業應用程式的擁有者。

企業應用程式

對於基於階段擁有者委派部署,為什麼我不能指定其他使用者作為部署者?

出於安全性原因,您必須以將設定為管道階段擁有者的使用者身分登入。 這可以防止將未經同意的使用者新增為部署者。

為什麼我的委派部署卡在待處理狀態?

所有委派部署在獲得核准前均處於等待狀態。 確保您的管理員已配置 Power Automate 核准流程或其他自動化,並確保其正常運作且部署已獲得核准。

誰擁有已部署的解決方案物件?

部署身分識別。 如果是委派部署,負責人是委派的服務主體或管道階段擁有者。

製作者如何存取目標環境中已部署的物件?

重要

部署期間共用的原生功能目前已可用,允許製作者要求存取已部署的資源做為部署要求的一部分。

要求製作者可能無法存取目標環境中已部署的資源。 管理員必須在 Power Platform 系統管理中心內指派安全性角色並共用已部署的應用程式、流程等。 或者,管理員可以建立自動化來管理存取權。

我可以新增自訂核准步驟嗎?

是。 例如,可自訂 Power Automate 核准以滿足您組織的需求。 您還可以整合其他核准系統。

我收到錯誤「ServicePrincipal」類型的委派部署只能由部署階段設定的服務主體核准或拒絕。

確保服務主體呼叫 Dataverse 自訂動作 UpdateApprovalStatus。 如果使用 Power Automate 核准,請確保此動作已設定為使用委派服務主體的連線。

我收到錯誤「擁有者」類型的委派部署只能由部署階段的擁有者核准或拒絕。

確保管道階段擁有者呼叫 Dataverse 自訂動作 UpdateApprovalStatus。 如果使用 Power Automate 核准,請確保此動作已設定為使用委派管道階段擁有者的連線。

我的核准流程中出現錯誤無法找到階段執行記錄的核准狀態屬性。

當核准狀態尚未處於待處理狀態時,就會發生這種情況。 確保這是委派部署,並且您在核准流程中使用 OnApprovalStarted 觸發程序。

我可以為不同的管線和階段使用不同的服務主體嗎?

是。