我想使用修復動作,但組織 AWS Config 規則不支援修復動作。
簡短描述
將自訂事件模式與 Amazon EventBridge 規則搭配使用,以符合您組織適用的 AWS Config 規則。然後,選擇 AWS Systems Manager Automation 執行手冊作為目標。
解決方法
在下列範例中,該執行手冊 AWS-TerminateEC2Instance 在組織規則的不合規資源上執行,資源類型為 AWS::EC2::Instance。Amazon Elastic Compute Cloud (Amazon EC2) 執行個體因不合規而終止。
注意:
1. 在開始之前,請確認您擁有執行 AWS Systems Manager Automation 執行手冊的 EC2 權限,和類似於下列內容的 Systems Manager Automation 角色信任政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"ssm.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}
2. 開啟 EventBridge 主控台。
3. 在導覽窗格中,選擇規則,然後選擇建立規則。
4. 在名稱和描述中,輸入規則的名稱和說明。
5. 在定義模式中,選擇事件模式。
5. 在事件相符模式中,選擇自訂模式。
6. 在事件模式,複製並貼上下列範例事件模式,然後選擇儲存。
**注意:**使用您帳戶中的目標組織規則名稱取代 "TestRuleExample"。
{
"source": [
"aws.config"
],
"detail-type": [
"Config Rules Compliance Change"
],
"detail": {
"messageType": [
"ComplianceChangeNotification"
],
"configRuleName": [
{
"prefix": "OrgConfigRule-TestRuleExample-"
}
],
"resourceType": [
"AWS::EC2::Instance"
],
"newEvaluationResult": {
"complianceType": [
"NON_COMPLIANT"
]
}
}
}
7. 選擇目標下拉式清單,然後選擇 SSM 自動化。
8. 選擇文件下拉式清單,然後選擇 AWS-TerminateEC2Instance。
9. 展開設定文件版本,然後選擇最新。
10. 展開設定自動化參數,然後選擇輸入轉換器。
11. 在輸入路徑文字方塊中,複製並貼上以下內容:
{"instanceid":"$.detail.resourceId"}
12. 在執行個體 ID 文字方塊中,複製並貼上以下內容:
{"InstanceId":[<instanceid>],"AutomationAssumeRole":["arn:aws:iam::123456789012:role/SSMRoleExample"]}
**注意:**使用您的 SSM 角色 ARN 取代 AutomationAssumeRole ARN 值。
13. 選擇建立新角色或使用現有角色,然後選擇建立。
注意:請確認 EventBridge 狀態為已啟用。
如需組織 AWS Config 規則狀態詳細資訊並取得清單,請參閱 describe-organization-config-rule-statuses 和 describe-organization-config-rules。
相關資訊
使用 AWS Config 服務在 AWS 帳戶中建立資源後,如何接收自訂電子郵件通知?
使用 AWS Config 規則自動修復不合規資源
教學:使用輸入轉換器自訂要傳送至事件目標的內容