

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

# 設定 Security Hub 以與 Microsoft Azure 整合
<a name="securityhub-v2-azure-setup-securityhub-v2"></a>

完成[先決條件任務](securityhub-v2-azure-prereqs.md)並[設定 Microsoft Azure 環境](securityhub-v2-azure-setup-azure.md)後，您可以將 AWS Security Hub 設定為與 Azure 整合。若要設定 Security Hub 與 Azure 整合，您可以建立連接器。您可以從委派管理員帳戶或管理帳戶建立連接器。建立連接器之後，會發生下列事件：

1. Security Hub 會驗證 Azure 憑證和 Azure 環境的連線。此程序需要幾分鐘的時間。

1. Security Hub 在 Security Hub CSPM 和 Amazon Inspector 中建立服務連結連接器。這些連接器可確保狀態管理檢查和漏洞掃描符合您在 Security Hub 中定義的範圍。

1. AWS Config 開始使用聯合身分憑證探索 Azure 資源。

1. Security Hub 會自動為您的 Azure 資源啟用 CSPM 中的 CIS Microsoft Azure Foundations Benchmark v4.0 標準和 Azure Foundational Best Practices 標準。

1. 對於具有活動日誌事件的資源，初始問題清單會在 15-30 分鐘內開始出現。所有現有資源的完整評估最多可能需要 24 小時。

**Topics**
+ [建立 連接器](#securityhub-v2-azure-setup-securityhub-v2-proc)
+ [調整連接器的範圍](#securityhub-v2-azure-setup-securityhub-v2-manage)
+ [驗證連接器的運作狀態](#securityhub-v2-azure-setup-securityhub-v2-verify)
+ [連接器故障診斷](#securityhub-v2-azure-setup-securityhub-v2-tshoot)
+ [資源和問題清單識別符](#securityhub-v2-azure-setup-securityhub-v2-identifiers)

## 建立 Azure 連接器
<a name="securityhub-v2-azure-setup-securityhub-v2-proc"></a>

若要為您的環境建立 Microsoft Azure 連接器，請使用 AWS Security Hub 主控台或 API 完成下列步驟。

1. 開啟位於 https：//[https://console.aws.amazon.com/securityhub/v2](https://console.aws.amazon.com/securityhub/v2) 的 AWS Security Hub 主控台。

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

1. 選擇**建立 Azure 連接器**。

1. 在**安全功能**區段中，選擇是否要啟用**網路掃描**功能。此功能預設為針對您啟用 Azure 整合的帳戶啟用，而且在完成連接器設定之前可以取消勾選。如果組織政策封鎖您帳戶的此功能，則不會顯示為 選項。如需詳細資訊，請參閱 [Security Hub 中的網路掃描](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-network-scanning.html)。

1. 針對 **Azure 租用戶 ID**，輸入您的 Microsoft Entra ID 租用戶識別符。您可以在 Azure 入口網站的 *Microsoft Entra ID > 屬性 > 租戶 ID* 下找到此項目。

1. 在**應用程式 （用戶端） ID** 中，輸入您在 Azure 環境設定期間註冊的 Azure 應用程式的應用程式 ID。

1. 執行下列動作來設定其他設定和連接器的範圍：
   + 在**名稱**中，輸入連接器的唯一名稱。名稱最多可包含 50 個英數字元，且可包含連字號。
**注意**  
連接器名稱無法在建立後變更。
   + 在**描述**中，選擇性地輸入連接器的簡短描述。描述最多可包含 200 個字元。
**重要**  
名稱和描述用於識別您的內容，我們建議您不要在其中包含敏感、機密或個人身分識別資訊 (PII)。
   + 對於**訂閱**，請選擇**所有訂閱**以監控租用戶中的所有目前和未來訂閱，或選擇**特定訂閱**以僅監控您指定的訂閱。如果您選擇只監控特定訂閱，請輸入每個訂閱的 ID。
   + 對於**區域**，請選擇**所有區域**以監控所有 Azure 區域中的資源，或選擇**特定區域**以僅監控您指定的區域。
**注意**  
如果您已為相同的 Azure 租用戶在 Security Hub CSPM 或 Amazon Inspector 中建立連接器，則 Security Hub 中的連接器範圍必須包含與 Security Hub CSPM 或 Amazon Inspector 中的連接器相同的訂閱和區域。
**注意**  
評估 Microsoft Entra ID 和 Microsoft Graph 資源的控制項需要將全域區域範圍包含在整合組態中。如果您只選取特定的 Azure 區域，這些控制項將不會產生問題清單。

1. 檢閱連接器組態。
**注意**  
如果您打算使用 Amazon Inspector for Azure VM scanning，則必須建立必要的 IAM 角色。如需詳細資訊，請參閱[透過 Amazon Inspector 進行 Azure VM 掃描的 IAM 角色](#securityhub-v2-azure-setup-securityhub-v2-iam)。

1. 當您完成輸入和檢閱設定時，請選擇**建立連接器**。

### 透過 Amazon Inspector 進行 Azure VM 掃描的 IAM 角色
<a name="securityhub-v2-azure-setup-securityhub-v2-iam"></a>

若要透過 Amazon Inspector 啟用漏洞掃描，您必須在 中建立下列 IAM 資源 AWS 帳戶。

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"
        }
    ]
}
```

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

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

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

啟用 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 政策。

建立連接器後，Security Hub 會開始監控您的 Azure 環境。您可以在**整合**頁面上檢查連接器的狀態。

## 調整 Azure 連接器的範圍
<a name="securityhub-v2-azure-setup-securityhub-v2-manage"></a>

建立 Microsoft Azure 連接器之後，您可以透過變更其監控的 Azure 訂閱或 Azure 區域來調整連接器的範圍。對於具有活動日誌事件的資源，範圍變更通常會在 15-30 分鐘內生效。新增 Azure 訂閱的完整評估最多可能需要 24 小時。

在調整連接器的範圍之前，請注意下列事項：
+ 當您變更 Security Hub 中連接器的範圍時，Security Hub CSPM 和 Amazon Inspector 中的相關服務連結連接器會自動更新以符合。
+ Security Hub 連接器的範圍絕不可以小於相同 Azure 租用戶的 Security Hub CSPM 或 Amazon Inspector 中任何現有的客戶受管連接器。
+ 如果您將區域新增至連接器範圍，則必須重新執行安裝指令碼，以在新區域中佈建 Event Hub 基礎設施。您現有的 Event Hub 組態不受影響。

## 驗證 Azure 連接器的運作狀態
<a name="securityhub-v2-azure-setup-securityhub-v2-verify"></a>

您可以隨時檢查 Microsoft Azure 連接器的運作狀態，以確認 Security Hub 正在從您的 Azure 環境接收資料。

**驗證連接器的運作狀態**

1. 開啟位於 https：//[https://console.aws.amazon.com/securityhub/v2](https://console.aws.amazon.com/securityhub/v2) 的 AWS Security Hub 主控台。

1. 在導覽窗格中，選擇**整合**，然後選取您的 Azure 連接器。

1. 確認連接器狀態顯示**作用中**。如果連接器顯示作用中，則驗證已完成。如果顯示不同的狀態，請參閱 [故障診斷 Azure 連接器](#securityhub-v2-azure-setup-securityhub-v2-tshoot)。

1. 導覽至**問題清單**並依 篩選`ResourceCloudProviders = Azure`，以確認正在為您的 Azure 資源產生問題清單。

1. 檢查**安全標準**頁面以確認 CIS Azure v4.0 標準顯示 PASSED 或 FAILED 狀態的控制項 （並非所有 NO\_DATA)。

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

## 故障診斷 Azure 連接器
<a name="securityhub-v2-azure-setup-securityhub-v2-tshoot"></a>

如果連接器發生問題，請檢閱下列常見問題和解決方案。

**連接器狀態為運作狀態不良**  
如果未在 Azure 中正確設定聯合登入資料，通常會發生此問題。  
若要解決此問題，請確認 Azure 聯合憑證中的字符發行者 URL 和主體 ARN 與您的 相符 AWS 帳戶。

**30 分鐘後沒有問題清單**  
如果 Event Hub 未收到活動日誌，可能會發生此問題。  
若要解決此問題，請檢查 Azure 訂閱上是否已設定診斷設定，以及 Event Hub 命名空間是否已正確標記 `AWSConfig-{{account-id}}-{{region}}`。

**所有控制項顯示 NO\_DATA**  
如果連接器已停用或 AWS Config 無法連線到您的 Azure 環境，可能會發生此問題。  
若要解決此問題，請確認連接器已啟用，且服務主體在租用戶根管理群組範圍內具有讀取器角色。

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

1. 若要確認您的環境符合所有需求，請檢閱 [Microsoft Azure 的先決條件](securityhub-v2-azure-prereqs.md#securityhub-v2-azure-prereqs-azure)。

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

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

**問題清單僅對某些訂閱顯示**  
如果未針對所有目標訂閱設定活動日誌匯出，可能會發生此問題。  
若要解決此問題，請確認診斷設定涵蓋連接器範圍中包含的所有訂閱。

## Security Hub 如何處理資源和問題清單識別符
<a name="securityhub-v2-azure-setup-securityhub-v2-identifiers"></a>

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

您連線雲端環境的下列識別符由 存放和使用 AWS ，以提供多雲端安全功能：
+ **資源識別符：**Azure 租戶 ID、訂閱 ID、位置 （區域）、資源 ID （資源群組 IDs或名稱、資源提供者、資源類型）
+ **安全性問題清單識別符：**指派給偵測服務產生之每個安全性問題清單的唯一識別符。

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