

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

# 設定 Amazon Inspector 與 Microsoft Azure 整合
<a name="inspector-azure-setup-inspector"></a>

設定 Azure 環境之後，請在 Amazon Inspector 中建立連接器，以開始掃描 Azure 資源是否有漏洞。

1. 開啟位於 https：//[https://console.aws.amazon.com/inspector/v2/home](https://console.aws.amazon.com/inspector/v2/home) 的 Amazon Inspector 主控台。

1. 在導覽窗格中選擇**整合**。

1. 選擇 **Create connector (建立連接器)**。

1. 請提供下列資訊：
   + **名稱** – 此連接器的唯一名稱。如需名稱和描述長度限制，請參閱《Amazon Inspector API 參考》中的 CreateConnector 操作。 Amazon Inspector 
   + **描述** （選用） – 此連接器的描述。
**重要**  
名稱和描述用於識別您的內容，我們建議您不要在其中包含敏感、機密或個人身分識別資訊 (PII)。
   + **Azure 租用戶 ID** – Microsoft Entra ID 您的租用戶識別符。在 Azure 入口網站的 Microsoft Entra ID、 屬性下找到。

1. 選取要啟用**的功能**：
   + VM 掃描 (Amazon Inspector VM Scanner 代理程式部署到 Azure VMs)
   + 函數應用程式掃描 （程式碼相依性分析）
   + ACR 映像掃描 （容器映像漏洞偵測）

   您可以啟用任何組合。稍後可以透過 變更功能`UpdateConnector`。

1. 設定您的**監控目標**：
   + **Azure 訂閱** – 選擇是否要監控租用戶中的所有訂閱，或指定個別IDs。
   + **Azure 區域** – 選擇是否啟用所有 Azure 區域或選取特定區域。

1. 設定**錄製來源**：

   選取現有的錄製來源，或建立新的錄製來源。記錄來源 ARN 是 API () 中的必要欄位`inspector2:CreateConnector`。

1. 複製產生的 Azure 設定指令碼，在 Azure 環境中執行 （請參閱[設定 Microsoft Azure 與 Amazon Inspector 整合](inspector-azure-setup-azure.md))，然後選擇**建立連接器**。

如果您啟用 VM 掃描，Amazon Inspector 會使用 Amazon EC2 Systems Manager Automation 在 Azure VM 上部署和管理 Amazon Inspector VMs Scanner 代理程式。使用 受管部署：
+ 不需要手動安裝。
+ 代理程式會自動保持最新狀態。
+ Amazon Inspector 會管理完整生命週期 （安裝、更新、運作狀態監控）。

Amazon Inspector 使用 Amazon EC2 Systems Manager Automation 來部署和管理代理程式。

若要啟用 VM 掃描，您必須在帳戶中建立下列 IAM 資源。

Microsoft Entra ID 使用下列組態為 建立 IAM OIDC 身分提供者：
+ **發行者 URL：** `https://sts.windows.net/{{tenant-id}}/`
+ **用戶端 ID 清單：**`api://{{app-id}}`、 `api://AzureADTokenExchange`
+ **指紋：**所有零的 40 個字元字串 (`0` 重複 40 次）。 AWS STS 透過 JWKS 端點驗證字符，而不是指紋值。{{}}

由在 Azure VM 上執行的 Amazon Inspector VMs Scanner 代理程式用來將掃描遙測傳送至 Amazon Inspector。此角色透過身分提供者使用 OIDC Web 聯合Microsoft Entra ID身分。

**信任政策：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Federated": "arn:aws:iam::{{account-id}}:oidc-provider/sts.windows.net/{{tenant-id}}/"
            },
            "Action": "sts:AssumeRoleWithWebIdentity"
        }
    ]
}
```

**許可政策 (TelemetryPolicy)：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "inspector2-telemetry:*",
            "Resource": "*"
        }
    ]
}
```

**標籤：**
+ `inspector-managed` = `true`{{}}

啟用 OIDC 聯合至 Azure 以進行安全的跨雲端身分驗證。此角色由 AssumeRole 和 DispatchRole 擔任，並由 Amazon EC2 Systems Manager 擔任，以取得 Azure 操作的 Web 身分字符。

**信任政策：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{{account-id}}:root"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalTag/caller": "SSM"
                },
                "ArnLike": {
                    "aws:PrincipalArn": [
                        "arn:aws:iam::{{account-id}}:role/Inspector2SSMAssumeRole-{{tenant-id}}",
                        "arn:aws:iam::{{account-id}}:role/Inspector2SSMDispatchRole-{{tenant-id}}"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "ssm.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

**許可政策 (FederationPolicy)：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "sts:IdentityTokenAudience": [
                        "api://AzureADTokenExchange"
                    ]
                }
            },
            "Action": [
                "sts:GetWebIdentityToken",
                "sts:TagGetWebIdentityToken"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
```

**標籤：**
+ `caller` = `SSM`
+ `inspector-managed` = `true`{{}}

執行 Amazon EC2 Systems Manager 自動化，將 Azure VMs 加入為受管執行個體。此角色會建立和管理混合啟用、將角色傳遞給 Amazon EC2 Systems Manager，以及擷取自動化文件。

**信任政策：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "ssm.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{account-id}}"
                }
            }
        }
    ]
}
```

**許可政策 (AssumeRolePolicy)：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::{{account-id}}:role/Inspector2SSMFederationRole-{{tenant-id}}"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::{{account-id}}:role/AmazonEC2RunCommandRoleForManagedInstances",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "ssm.amazonaws.com"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:CreateActivation",
                "ssm:DeleteActivation",
                "ssm:DescribeActivations",
                "ssm:DescribeInstanceInformation",
                "ssm:PutConfigurePackageResult",
                "iam:ListRoleTags"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "ssm:AddTagsToResource",
            "Resource": [
                "arn:aws:ssm:*:{{account-id}}:activation/*",
                "arn:aws:ssm:*:{{account-id}}:managed-instance/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "ssm:GetDocument",
            "Resource": [
                "arn:aws:ssm:*:*:document/AWS-InstallDistributorPackageOnAzure",
                "arn:aws:ssm:*:*:document/AWS-InstallSsmAgentOnAzure",
                "arn:aws:ssm:*::document/AmazonInspector2-InspectorVmScanner"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "ssm:GetCloudConnector",
            "Resource": "*"
        }
    ]
}
```

**標籤：**
+ `caller` = `SSM`
+ `AzureTenantId` = `{{tenant-id}}`
+ `AzureApplicationId` = `{{app-id}}`
+ `inspector-managed` = `true`{{}}

解決 Azure VM 目標，並透過 Amazon EC2 Systems Manager Automation 分派 Amazon Inspector VM Scanner 代理程式安裝。 Amazon EC2 Systems Manager 此角色會啟動自動化執行，並將 AssumeRole 傳遞給 Amazon EC2 Systems Manager。

**信任政策：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "ssm.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{account-id}}"
                }
            }
        }
    ]
}
```

**許可政策 (DispatchPolicy)：**

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::{{account-id}}:role/Inspector2SSMAssumeRole-{{tenant-id}}",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "ssm.amazonaws.com"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "ssm:StartAutomationExecution",
            "Resource": [
                "arn:aws:ssm:*:*:document/AWS-InstallDistributorPackageOnAzure",
                "arn:aws:ssm:*:{{account-id}}:automation-execution/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::{{account-id}}:role/Inspector2SSMFederationRole-{{tenant-id}}"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeInstanceInformation",
                "ssm:ListCloudConnectors",
                "ssm:GetCloudConnector",
                "iam:ListRoleTags"
            ],
            "Resource": "*"
        }
    ]
}
```

**標籤：**
+ `caller` = `SSM`
+ `inspector-managed` = `true`

Azure 應用程式註冊必須將其應用程式 ID URI 設定為 `api://{{app-id}}`。

每個目標 Azure VM 必須啟用系統指派的受管身分。若要自動將受管身分指派給新的 VMs，請在 Azure 環境中使用 DeployIfNotExists 政策。

如需 Amazon Inspector VM Scanner 代理程式的詳細資訊，請參閱 [Amazon Inspector VM Scanner](inspector-vm-scanner.md)。

或者，您可以手動安裝 Amazon Inspector VM Scanner 代理程式。對於跨許多 Azure VMs 大規模手動安裝，請使用 Azure VM 自訂擴充功能。如需說明，請參閱[Amazon Inspector VM Scanner](inspector-vm-scanner.md)。

若要排除特定 Azure VMs進行掃描，請將下列標籤套用至 VM：
+ **索引鍵**：`InspectorExclusion`
+ **Value (值)**：`true`

建立連接器之後，您可以透過變更其監控的 Azure 訂閱或 Azure 區域來調整其範圍。如果您調整範圍，大多數變更會在大約 15 分鐘內生效。

調整範圍之前，請注意下列事項：
+ 如果您將區域新增至範圍，主控台會產生更新的設定指令碼，在新區域中建立必要的 Event Hub 基礎設施。
+ 如果服務連結連接器存在 （透過 建立 AWS Security Hub CSPM)，您無法直接縮小其在 Amazon Inspector 中的範圍。請改為修改 中的 AWS Security Hub CSPM 範圍。
+  AWS Security Hub CSPM 連接器的範圍絕不可以小於相同 Azure 租用戶的 Amazon Inspector 中任何現有的客戶受管連接器。

建立連接器後，Amazon Inspector 會開始探索和掃描您的 Azure 資源。初始問題清單集最多可能需要 24 小時才會出現。若要驗證連接器是否正常運作：

1. 在 Amazon Inspector 主控台中，導覽至**摘要**以確認正在填入 Azure 資源計數。

1. 導覽至**涵蓋**範圍，以驗證 Azure 資源是否顯示掃描狀態。

1. 導覽至**整合**，選取與 Microsoft Azure 的整合，並確認連接器運作狀態顯示 `Active`。

1. 對於 VM 掃描，請確認 Azure VMs涵蓋範圍檢視中顯示 Amazon Inspector VM Scanner 代理程式狀態。

1. 導覽至**問題清單**並依資源類型篩選，以檢視 Azure 資源問題清單。

**注意**  
連接器運作狀態最終一致。當許可或組態問題發生時，連接器狀態會快速變更為**降級**，並顯示可採取動作的訊息。不過，在您修正問題之後，狀態最多可能需要 24 小時才能返回**已連線**。  
最近修正後的**降級**狀態不一定表示問題持續發生。
如需記錄失敗的即時可見性，請檢查 命名空間中的 CloudWatch 指標。

如果連接器狀態顯示錯誤或資源在 24 小時後未顯示，請檢閱以下內容：

連接器顯示錯誤狀態  
確認 Azure 應用程式註冊具有正確的聯合身分憑證，且 AWS 您的帳戶中已設定 IAM Token Issuer URL。

無法記錄一些 Azure 資源  
錯誤可能由於下列任何原因發生：  
+ Azure 環境不符合資源記錄的先決條件。
+ 應用程式註冊沒有 Microsoft Graph API 許可的管理員同意。
+ Reader 角色指派未涵蓋所有必要的範圍。
+ Microsoft Entra ID 租用戶沒有所需的日誌資料。
若要解決錯誤，請執行下列動作：  

1. 若要確認您的環境符合所有需求，請檢閱將 [Amazon Inspector 與 Microsoft Azure 整合的先決條件](inspector-azure-prereqs.md)。

1. 確認應用程式註冊具有管理員同意的必要 Microsoft Graph API 許可。

1. 確認服務主體在租用戶根管理群組範圍內具有讀取器角色。

資源未顯示  
確認 Event Hub 正在接收事件。在 Azure 入口網站中檢查 Event Hub 指標，並確認`AWSConfig`消費者群組是否存在。

VMs未掃描  
確認 VMs 與 Amazon EC2 Systems Manager 端點具有網路連線能力，且正在執行支援的作業系統。

ACR 影像未顯示  
確認您的容器登錄檔上已啟用診斷設定。

範圍變更未生效  
當您變更連接器範圍以新增新的 Azure 區域時，主控台會重新產生設定指令碼。您必須重新執行更新的指令碼，才能在新區域中佈建 Event Hub 基礎設施。

透過啟用 Amazon Inspector 的 Azure 整合，其他雲端提供者的資源識別符將存放在 AWS Config、Amazon Inspector 和其他 AWS 服務 （視需要） 中，做為從其他雲端提供者收集之對應資源組態資料的管理相關中繼資料。這類資源識別符不會構成您的內容，我們建議您不要在其中包含敏感、機密或個人身分識別資訊。

您連線雲端環境的下列識別符由 存放和使用 AWS ，以提供多雲端安全功能：
+ **資源識別符：**Azure 租戶 ID、訂閱 ID、位置 （區域）、資源 ID （資源群組 IDs或名稱、資源提供者、資源類型）

這些識別符之間的關係 - 包括資源彼此的關係，以及問題清單與資源的關係 - 也會儲存為服務中繼資料。 AWS 使用這些識別符進行資源相互關聯、將問題清單與資源建立關聯、服務操作記錄和刪除重複。