

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

# 在您的帳戶中啟用主動控制型勾點
<a name="proactive-controls-hooks-activate-hooks"></a>

下列主題說明如何在您的 帳戶中啟用主動控制型勾點，使其可在其啟用的帳戶和區域中使用。

**重要**  
在繼續之前，請確認您具有使用勾點所需的許可，並從 CloudFormation 主控台檢視主動控制。如需詳細資訊，請參閱[授予 CloudFormation Hooks 的 IAM 許可](grant-iam-permissions-for-hooks.md)。

**Topics**
+ [啟用主動控制型勾點 （主控台）](#proactive-controls-hooks-activate-hook-console)
+ [啟用主動控制型勾點 (AWS CLI)](#proactive-controls-hooks-activate-hooks-cli)

## 啟用主動控制型勾點 （主控台）
<a name="proactive-controls-hooks-activate-hook-console"></a>

**啟用主動控制型勾點，以便在您的帳戶中使用**

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

1. 在畫面頂端的導覽列上，選擇您要建立連接所在的 AWS 區域 。

1. 在左側導覽窗格中，選擇**勾點**。

1. 在**勾點**頁面上，選擇**建立勾點**，然後選擇**使用控制目錄**。

1. 在**選取控制項**頁面上，針對**主動控制項**，選取要使用的一或多個主動控制項。

   這些控制項會在建立或更新指定的資源時自動套用。您的選擇會決定勾點將評估哪些資源類型。

1. 選擇**下一步**。

1. 針對**勾點名稱**，選擇下列其中一個選項：
   + 提供將在 之後新增的簡短描述性名稱`Private::Controls::`。例如，如果您輸入 {{`MyTestHook`}}，則完整的勾點名稱會變成 `Private::Controls::{{MyTestHook}}`。
   + 使用此格式提供完整的勾點名稱 （也稱為別名）：`{{Provider}}::{{ServiceName}}::{{HookName}}`。

1. 針對**勾點模式**，選擇當控制項評估失敗時勾點如何回應：
   + **警告** — 向使用者發出警告，但允許動作繼續。這適用於非關鍵驗證或資訊檢查。
   + **失敗** — 防止動作繼續。這有助於強制執行嚴格的合規或安全政策。

1. 選擇**下一步**。

1. （選用） 對於**勾點篩選條件**，請執行下列動作：

   1. 針對**篩選條件**，選擇套用堆疊名稱和堆疊角色篩選條件的邏輯：
      + **所有堆疊名稱和堆疊角色** – 只有在所有指定的篩選條件相符時，才會叫用勾點。
      + **任何堆疊名稱和堆疊角色** – 如果至少一個指定的篩選條件相符，則會叫用勾點。

   1. 對於**堆疊名稱**，請在勾點調用中包含或排除特定堆疊。
      + 針對**包含**，指定要包含的堆疊名稱。當您有一小組想要鎖定的特定堆疊時，請使用此選項。只有此清單中指定的堆疊會叫用勾點。
      + 針對**排除**，指定要排除的堆疊名稱。當您想要在大多數堆疊上叫用勾點，但排除一些特定堆疊時，請使用此選項。除了此處列出的堆疊之外，所有堆疊都會叫用勾點。

   1. 對於**堆疊角色**，請根據特定堆疊相關聯的 IAM 角色，從勾點調用中包含或排除特定堆疊。
      + 針對**包含**，指定一或多個 IAM 角色 ARNs 至與這些角色相關聯的目標堆疊。只有這些角色啟動的堆疊操作才會叫用勾點。
      + 針對**排除**，為您要排除的堆疊指定一或多個 IAM 角色 ARNs。所有堆疊都會叫用勾點，但由指定角色啟動的堆疊除外。

1. 選擇**下一步**。

1. 在**檢閱和啟用**頁面上，檢閱您的選擇。選擇**編輯**以對相關區段進行變更。

1. 當您準備好繼續時，請選擇**啟用勾點**。

## 啟用主動控制型勾點 (AWS CLI)
<a name="proactive-controls-hooks-activate-hooks-cli"></a>

在繼續之前，請確認您已識別要與此勾點搭配使用的主動控制。如需詳細資訊，請參閱 [AWS Control Tower Control Catalog](https://docs.aws.amazon.com/controltower/latest/controlreference/controls-reference.html)。

**啟用主動控制型勾點以用於您的帳戶 (AWS CLI)**

1. 若要開始啟用勾點，請使用下列[https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html)命令，將預留位置取代為您的特定值。

   ```
   aws cloudformation activate-type --type HOOK \
     --type-name AWS::ControlTower::Hook  \
     --publisher-id aws-hooks \
     --type-name-alias {{MyOrg::Security::ComplianceHook}} \
     --region {{us-west-2}}
   ```

1. 若要完成啟用勾點，您必須使用 JSON 組態檔案進行設定。

   使用 **cat**命令建立具有下列結構的 JSON 檔案。如需詳細資訊，請參閱[勾點組態結構描述語法參考](hook-configuration-schema.md)。

   下列範例會設定在 `CREATE`和 `UPDATE`操作期間調用特定 IAM、Amazon EC2 和 Amazon S3 資源的勾點。它套用三個主動控制 (`CT.IAM.PR.5`、`CT.EC2.PR.17`、`CT.S3.PR.12`)，以根據合規標準驗證這些資源。勾點會在 `WARN` 模式下運作，這表示它會使用警告標記不合規的資源，但不會封鎖部署。

   ```
   $ cat > config.json
   {
     "CloudFormationConfiguration": {
       "HookConfiguration": {
         "HookInvocationStatus": "{{ENABLED}}",
         "TargetOperations": ["RESOURCE"],
         "FailureMode": "{{WARN}}",
         "Properties": {
           "ControlsToApply": "{{CT.IAM.PR.5,CT.EC2.PR.17,CT.S3.PR.12}}"
         },
         "TargetFilters": {
           "Actions": [
             "{{CREATE}}",
             "{{UPDATE}}"
           ]
         }
       }
     }
   }
   ```
   + `HookInvocationStatus`：設定為 `ENABLED` 以啟用勾點。
   + `TargetOperations`：設定為 ，`RESOURCE`因為這是主動控制型勾點唯一支援的值。
   + `FailureMode`：設為 `FAIL` 或 `WARN`。
   + `ControlsToApply`：指定要使用的主動控制控制 IDs。如需詳細資訊，請參閱 [AWS Control Tower Control Catalog](https://docs.aws.amazon.com/controltower/latest/controlreference/controls-reference.html)。
   + （選用） `TargetFilters`：對於 `Actions`，您可以指定 `CREATE`或 `UPDATE`或兩者 （預設），以控制何時叫用勾點。`CREATE` 僅指定 會將勾點限制為僅限 `CREATE` 操作。其他`TargetFilters`屬性沒有效果。

1. 使用下列[https://docs.aws.amazon.com/cli/latest/reference/cloudformation/set-type-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/set-type-configuration.html)命令以及您建立的 JSON 檔案來套用組態。將預留位置取代為您的特定值。

   ```
   aws cloudformation set-type-configuration \
     --configuration {{file://config.json}} \
     --type-arn {{"arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook"}} \
     --region {{us-west-2}}
   ```