

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連接 Azure DevOps
<a name="connecting-azure-connecting-azure-devops"></a>

Azure DevOps 整合可讓 AWS DevOps Agent 存取 Azure DevOps 組織中的儲存庫和管道執行歷史記錄。代理程式可以將程式碼變更和部署與操作事件建立關聯，以協助識別潛在的根本原因。

**注意：**Azure DevOps 管道可以使用來自 Azure Repos、GitHub 或 Bitbucket 的原始程式碼。無論來源提供者為何，Azure DevOps 整合都可以存取管道執行歷史記錄。不過，若要在調查期間存取實際的原始程式碼，儲存庫必須透過支援的整合分別連線，例如 [連接 GitHub](connecting-to-cicd-pipelines-connecting-github.md)。Bitbucket 中的原始程式碼無法透過此整合直接存取。

此整合遵循兩個步驟：在 AWS 帳戶層級註冊 Azure DevOps，然後將特定專案與個別客服人員空間建立關聯。

## 先決條件
<a name="prerequisites"></a>

連接 Azure DevOps 之前，請確定您擁有：
+ 存取 AWS DevOps 代理程式主控台
+ 至少有一個專案包含儲存庫和管道歷史記錄的 Azure DevOps 組織
+ 將使用者新增至 Azure DevOps 組織的許可
+ 針對管理員同意方法：具有在 Microsoft Entra ID 中執行管理員同意許可的帳戶
+ 對於應用程式註冊方法：具有設定聯合身分憑證許可的 Entra 應用程式，以及在 AWS 您的帳戶中啟用[傳出身分聯合](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-federation.html) 

**注意：**您也可以從 代理程式空間內開始註冊。導覽至**管道**區段，按一下**新增**，然後選取 **Azure DevOps**。如果 Azure DevOps 尚未註冊，主控台會先引導您完成註冊。

## 透過管理員同意註冊 Azure DevOps
<a name="registering-azure-devops-via-admin-consent"></a>

管理員同意方法使用以同意為基礎的流程搭配 AWS DevOps 代理程式受管應用程式。

### 步驟 1：開始註冊
<a name="step-1-start-the-registration"></a>

1. 登入 AWS 管理主控台並導覽至 AWS DevOps 代理程式主控台

1. 前往**功能提供者**頁面

1. 找到 **Azure DevOps** 區段，然後按一下**註冊**

1. 出現提示時輸入您的 **Azure DevOps 組織名稱** 

### 步驟 2：完成管理員同意
<a name="step-2-complete-admin-consent"></a>

1. 按一下以繼續 - 系統會將您重新導向至 Microsoft Entra 管理員同意頁面

1. 使用具有執行管理員同意許可的使用者主體帳戶登入

1. 檢閱並授予對 AWS DevOps Agent 應用程式的同意

### 步驟 3：完成使用者授權
<a name="step-3-complete-user-authorization"></a>

1. 管理員同意後，系統會提示您輸入使用者授權，以驗證您的身分為授權租用戶的成員

1. 使用屬於相同 Azure 租用戶的帳戶登入

1. 授權之後，系統會將您重新導向回成功狀態的 AWS DevOps 代理程式主控台

### 步驟 4：在 Azure DevOps 中授予存取權
<a name="step-4-grant-access-in-azure-devops"></a>

請參閱下方的[在 Azure DevOps 中授予存取權](#granting-access-in-azure-devops)。在新增使用者時搜尋 **AWS DevOps 代理**程式。

## 透過應用程式註冊註冊 Azure DevOps
<a name="registering-azure-devops-via-app-registration"></a>

應用程式註冊是在 Azure 資源和 Azure DevOps 之間共用。如果您已完成 Azure 資源的應用程式註冊，可以跳到[在 Azure DevOps 中授予存取權](#granting-access-in-azure-devops)。

### 步驟 1：啟動 ADO 應用程式註冊
<a name="step-1-start-the-ado-app-registration"></a>

1. 在 AWS DevOps 代理程式主控台中，前往**功能提供者**頁面

1. 找到 **Azure 雲端**區段，然後按一下**註冊**

1. 選取**應用程式註冊**方法

### 步驟 2：建立和設定您的 Entra 應用程式
<a name="step-2-create-and-configure-your-entra-application"></a>

遵循主控台中顯示的指示，以：

1. 在 AWS 帳戶中啟用傳出聯合身分 （在 IAM 主控台中，前往**帳戶設定** → **傳出聯合身分**)

1. 在 Microsoft Entra ID 中建立 Entra 應用程式，或使用現有的應用程式

1. 在應用程式上設定聯合身分憑證

### 步驟 3：提供註冊詳細資訊
<a name="step-3-provide-registration-details"></a>

使用下列項目填寫註冊表單：
+ **租用戶 ID** – Azure 租用戶識別符
+ **租用戶名稱** – 租用戶的顯示名稱
+ **用戶端 ID** – Entra 應用程式的應用程式 （用戶端） ID
+ **對象** – 聯合登入資料的對象識別符

### 步驟 4：建立 IAM 角色
<a name="step-4-create-the-iam-role"></a>

當您透過主控台提交註冊時，會自動建立 IAM 角色。它允許 AWS DevOps 代理程式擔任登入資料並叫用 `sts:GetWebIdentityToken`。

### 步驟 5：完成註冊
<a name="step-5-complete-the-registration"></a>

1. 在 AWS DevOps 代理程式主控台中確認組態

1. 按一下**提交**以完成註冊

### 步驟 6：在 Azure DevOps 中授予存取權
<a name="step-6-grant-access-in-azure-devops"></a>

請參閱下方的[在 Azure DevOps 中授予存取權](#granting-access-in-azure-devops)。在新增使用者時，搜尋您在應用程式註冊期間建立的 Entra 應用程式。

## 在 Azure DevOps 中授予存取權
<a name="granting-access-in-azure-devops"></a>

註冊後，將應用程式存取權授予 Azure DevOps 組織。管理員同意和應用程式註冊方法的此步驟相同。

1. 在 Azure DevOps 中，前往**組織設定** > **使用者** > **新增使用者**

1. 搜尋應用程式 (**AWS DevOps Agent** for Admin Consent 或您自己的 Entra 應用程式用於應用程式註冊）

1. 將存取層級設定為**基本**

1. 在**新增至專案**下，選取您希望客服人員存取的專案

1. 在 **Azure DevOps 群組**下，選取**專案讀取器**

1. 按一下**新增**以完成

**安全需求：**僅指派 **Project Readers** 群組。唯讀存取可做為安全界限，將代理程式限制為唯讀操作，並限制間接提示注入攻擊的影響。指派具有寫入或動作許可的群組會大幅增加提示注入的爆量半徑，並可能導致 Azure DevOps 資源遭到入侵。

## 將專案與客服人員空間建立關聯
<a name="associating-a-project-with-an-agent-space"></a>

在帳戶層級註冊 Azure DevOps 之後，請將特定專案與您的 代理程式空間建立關聯：

1. 在 AWS DevOps 代理程式主控台中，選取您的代理程式空間

1. 前往**功能**索引標籤

1. 在**管道**區段中，按一下**新增**

1. 從可用提供者清單中選取 **Azure DevOps** 

1. 從可用專案的下拉式清單中選取專案

1. 按一下**新增**以完成關聯

## 管理 Azure DevOps 連線
<a name="managing-azure-devops-connections"></a>
+ **檢視連線的專案** – 在**功能**索引標籤中，**管道**區段會列出所有連線的 Azure DevOps 專案。
+ **移除專案** – 若要中斷專案與客服人員空間的連線，請在**管道**區段中選取專案，然後按一下**移除**。
+ **移除註冊** – 若要完全移除 Azure DevOps 註冊，請前往**功能提供者**頁面並刪除註冊。必須先移除所有 Agent Space 關聯。