

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

# 使用 AWS Config 規則評估您的 資源
<a name="evaluating-your-resources"></a>

當您建立自訂規則或使用受管規則時， 會根據這些規則 AWS Config 評估您的資源。您可以針對您的規則，執行資源的隨需評估。例如，當您建立自訂規則並想要檢查 AWS Config 是否正確評估您的資源，或識別 AWS Lambda 函數的評估邏輯是否有問題時，這很有幫助。

**範例**

1.  您可以建立自訂規則，評估您的 IAM 使用者是否擁有作用中的存取金鑰。

1.  AWS Config 會根據您的自訂規則評估您的 資源。

1.  沒有作用中存取金鑰的 IAM 使用者存在於您的帳戶中。您的規則並未將此資源正確標記為「NON\$1COMPLIANT」。

1.  您修正規則並再次開始評估。

1. 因為您已修正您的規則，規則會正確評估您的資源，並將 IAM 使用者資源標記為「NON\$1COMPLIANT」。

當您將規則新增至 帳戶時，您可以在 AWS Config 要評估資源的資源建立和管理程序中指定何時。資源建立和管理程序稱為資源佈建。您可以選擇*評估模式*來指定在此程序中 AWS Config 您想要評估資源的時間。

根據規則， AWS Config 可以在部署資源之前、部署資源之後，或兩者都評估您的資源組態。在部署資源之前對其進行評估，即為**主動評估**。在部署資源之後對其進行評估，即為**偵測評估**。

## 主動模式
<a name="evaluating-your-resources-proactive"></a>

使用主動評估，在部署資源之前對其進行評估。這可讓您評估一組資源屬性，如果用於定義 AWS 資源，根據您在區域中帳戶中擁有的一組主動規則，該屬性是 COMPLIANT 還是 NON\$1COMPLIANT。

[資源類型結構描述](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html)會說明資源的屬性。您可以在 AWS CloudFormation 登錄檔中的「*AWS 公有擴充*功能」中找到資源類型結構描述，或使用下列 CLI 命令：

```
aws cloudformation describe-type --type-name "AWS::S3::Bucket" --type RESOURCE
```

如需詳細資訊，請參閱 AWS CloudFormation 《 使用者指南》中的[透過 CloudFormation 登錄檔管理擴充](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-view)功能，以及[AWS 資源和屬性類型參考](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html)。

**注意**  
主動規則不會修復標記為「NON\$1COMPLIANT」的資源，也不會防止部署這些資源。

### 評估您的資源
<a name="evaluating-your-resources-console-proactive"></a>

**開啟主動評估**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/config/home](https://console.aws.amazon.com/config/home) 開啟 AWS Config 主控台。

1. 在 AWS 管理主控台 選單中，確認區域選擇器已設定為支援 AWS Config 規則的區域。如需受支援 AWS 區域的清單，請參閱《*Amazon Web Services 一般參考*》中的 [AWS Config 區域與端點](https://docs.aws.amazon.com/general/latest/gr/rande.html#awsconfig_region)。

1. 在左側導覽中，選擇 **規則**。如需支援主動評估的受管規則清單，請參閱[依評估模式的 AWS Config 受管規則清單](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-evaluation-mode.html)。

1. 選擇規則，然後針對您要更新的規則選擇 **編輯規則**。

1. 針對 **評估模式**，請選擇 **開啟主動評估**，這可讓您在部署資源之前，對資源的組態設定執行評估。

1. 選擇**儲存**。

**注意**  
您也可以使用 [https://docs.aws.amazon.com/cli/latest/reference/configservice/put-config-rule.html](https://docs.aws.amazon.com/cli/latest/reference/configservice/put-config-rule.html) 命令開啟主動評估，並啟用 `EvaluationModes` 的 `PROACTIVE`，或使用 [PutConfigRule](https://docs.aws.amazon.com/config/latest/APIReference/API_PutConfigRule.html) 動作並啟用 `EvaluationModes` 的 `PROACTIVE`。

開啟主動評估後，您可以使用 [StartResourceEvaluation](https://docs.aws.amazon.com/config/latest/APIReference/API_StartResourceEvaluation.html) API 和 [GetResourceEvaluationSummary](https://docs.aws.amazon.com/config/latest/APIReference/API_GetResourceEvaluationSummary.html) API 來檢查您在這些命令中指定的資源是否會被您區域中帳戶中的主動規則標記為「NON\$1COMPLIANT」。

例如，從 StartResourceEvaluation API 開始：

```
aws configservice start-resource-evaluation --evaluation-mode PROACTIVE
                --resource-details '{"ResourceId":"MY_RESOURCE_ID",
                                     "ResourceType":"AWS::RESOURCE::TYPE",
                                     "ResourceConfiguration":"RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA",
                                     "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'
```

您應該會在輸出中收到 `ResourceEvaluationId`：

```
{
    "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID"
}
```

然後，請使用 `ResourceEvaluationId` 與 GetResourceEvaluationSummary API 來檢查評估結果：

```
aws configservice get-resource-evaluation-summary
    --resource-evaluation-id MY_RESOURCE_EVALUATION_ID
```

您應該會收到類似下列的輸出：

```
{
    "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID",
    "EvaluationMode": "PROACTIVE",
    "EvaluationStatus": {
        "Status": "SUCCEEDED"
    },
    "EvaluationStartTimestamp": "2022-11-15T19:13:46.029000+00:00",
    "Compliance": "COMPLIANT",
    "ResourceDetails": {
        "ResourceId": "MY_RESOURCE_ID",
        "ResourceType": "AWS::RESOURCE::TYPE",
        "ResourceConfiguration": "RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA"
    }
}
```

若要查看評估結果的其他資訊，例如哪個規則將資源標記為「NON\$1COMPLIANT」，請使用 [GetComplianceDetailsByResource](https://docs.aws.amazon.com/config/latest/APIReference/API_GetComplianceDetailsByResource.html) API。

## 偵測模式
<a name="evaluating-your-resources-detective"></a>

使用偵測評估來評估已部署的資源。這可讓您評估現有資源的組態設定。

### 評估您的資源 (主控台)
<a name="evaluating-your-resources-console"></a>

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/config/home](https://console.aws.amazon.com/config/home) 開啟 AWS Config 主控台。

1. 在 AWS 管理主控台 功能表中，檢查區域選擇器是否設定為支援 AWS Config 規則的區域。如需支援區域的清單，請參閱《*Amazon Web Services 一般參考*》中的 [AWS Config 區域與端點](https://docs.aws.amazon.com/general/latest/gr/awsconfig.html)。

1. 在導覽窗格中，選擇**規則**。**規則** 頁面會顯示每個規則的名稱、相關聯的修復動作和合規狀態。

1. 從清單中選擇規則。

1. 從 **動作** 下拉式清單中，選擇 **重新評估**。

1.  AWS Config 會開始針對您的規則評估資源。

**注意**  
您可以每分鐘重新評估規則一次。您必須等待 AWS Config 完成規則的評估，才能開始另一個評估。您無法在規則更新或規則正在刪除的同時執行評估。

### 評估您的資源 (CLI)
<a name="evaluating-your-resources-cli"></a>
+ 使用 **start-config-rules-evaluation** 命令：

  ```
  $ aws configservice start-config-rules-evaluation --config-rule-names ConfigRuleName
  ```

  AWS Config 會開始針對您的規則評估記錄的資源組態。您也可以在您的請求中指定多個規則：

  ```
  $ aws configservice start-config-rules-evaluation --config-rule-names ConfigRuleName1 ConfigRuleName2 ConfigRuleName3
  ```

### 評估您的資源 (API)
<a name="evaluating-your-resources-api"></a>

使用 [StartConfigRulesEvaluation](https://docs.aws.amazon.com/config/latest/APIReference/API_StartConfigRulesEvaluation.html) 動作。