檢視 CloudFormation 勾點的調用結果 - CloudFormation

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

檢視 CloudFormation 勾點的調用結果

本主題說明如何檢視 CloudFormation 勾點的調用結果。檢視調用結果可協助您了解 Hooks 如何評估您的資源,並解決 Hooks 驗證資源時偵測到的任何問題。

當您的驗證邏輯 (無論是 AWS Control Tower 主動控制、Guard 規則或 Lambda 函數) 在資源的生命週期期間執行時,呼叫是特定的執行個體。

在主控台中檢視調用結果

您可以透過三種方式在主控台中檢視調用結果:透過調用摘要頁面、透過個別勾點的調用歷史記錄,或透過堆疊特定調用的個別堆疊事件。

檢視所有勾點的結果

調用摘要頁面提供過去 90 天您帳戶和區域中所有 Hook 調用的完整檢視。

檢視所有勾點的結果
  1. 登入 AWS 管理主控台 並在 https://https://console.aws.amazon.com/cloudformation 開啟 CloudFormation 主控台。

  2. 在畫面頂端的導覽列上,選擇您要檢視勾點叫用的 AWS 區域 。

  3. 從導覽窗格中,選擇叫用摘要

  4. 此頁面會顯示過去 90 天的所有勾點調用清單,包括:

    • 調用 ID

    • 勾點

    • Target

    • 模式 (WarnFail)

    • 結果 (WarningPassFailedIn progress)

    • 調用時間

    • 結果訊息

  5. 您可以使用資料表頂端的搜尋列來篩選清單,以尋找特定的調用。

  6. 選取特定調用,以檢視調用結果的更多新增詳細資訊,包括失敗的勾點調用的修補指引。

檢視個別勾點的調用歷史記錄

您也可以透過個別勾點的調用歷史記錄來檢視調用結果。

檢視特定勾點的勾點調用
  1. 登入 AWS 管理主控台 並在 https://https://console.aws.amazon.com/cloudformation 開啟 CloudFormation 主控台。

  2. 在畫面頂端的導覽列上,選擇您要檢視勾點叫用的 AWS 區域 。

  3. 從導覽窗格中,選擇勾點

  4. 選擇您要檢視勾點調用的勾點。

  5. 選取特定調用,以檢視調用結果的更多新增詳細資訊,包括失敗的勾點調用的修補指引。

檢視堆疊特定調用的結果

您也可以透過堆疊事件頁面檢視特定堆疊的調用結果。

檢視特定堆疊的勾點叫用
  1. 登入 AWS 管理主控台 並在 https://https://console.aws.amazon.com/cloudformation 開啟 CloudFormation 主控台。

  2. 在畫面頂端的導覽列上,選擇堆疊操作發生的 AWS 區域 。

  3. 從導覽窗格選擇堆疊

  4. 選取您要檢視勾點調用的堆疊。

  5. 選擇堆疊事件索引標籤。

  6. 在事件清單中,尋找狀態原因欄中完成的勾點調用事件。

  7. 若要檢視特定的勾點調用詳細資訊,請檢閱勾點調用欄,然後選擇加上底線的文字以開啟含有更多詳細資訊的快顯視窗。

    注意

    若要顯示隱藏的資料欄,請選擇區段右上角的齒輪圖示以開啟偏好設定模式,視需要更新設定,然後選擇確認

使用 檢視調用結果 AWS CLI

使用 list-hook-results命令來擷取有關勾點調用的資訊。此命令支援下列篩選選項:

  • 取得所有勾點調用結果 (不需要參數)

  • 依勾點 ARN 篩選 (使用 --type-arn)

  • 依勾點 ARN 和狀態篩選 (使用 --type-arn--status)

  • 搜尋特定目標 (使用 --target-type--target-id)

依勾點 ARN 篩選結果

下列命令會列出特定勾點的所有勾點調用結果。

aws cloudformation list-hook-results \ --type-arn arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook \ --region us-west-2

輸出範例:

{ "HookResults": [ { "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook", "HookResultId": "59ef501c-0ac4-47c0-a193-e071cabf748d", "TypeName": "MyOrg::Security::ComplianceHook", "TypeVersionId": "00000001", "HookExecutionTarget": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/39f29d10-73ed-11f0-abc1-0affdfe4aebb", "InvokedAt": "2025-08-08T00:18:39.651Z", "FailureMode": "WARN", "HookStatusReason": "...", "InvocationPoint": "PRE_PROVISION", "Status": "HOOK_COMPLETE_FAILED" }, ... ] }

如需回應中欄位的說明,請參閱 AWS CloudFormation API 參考中的 HookResultSummary

依勾點 ARN 和狀態篩選結果

若要篩選結果之間的常見狀態,請在 命令中指定 --status選項。有效的值如下:

  • HOOK_IN_PROGRESS:Hook 目前正在執行。

  • HOOK_COMPLETE_SUCCEEDED:勾點已成功完成。

  • HOOK_COMPLETE_FAILED:Hook 已完成但驗證失敗。

  • HOOK_FAILED:Hook 在執行期間遇到錯誤。

aws cloudformation list-hook-results \ --type-arn arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook \ --status HOOK_COMPLETE_FAILED \ --region us-west-2

輸出範例:

{ "HookResults": [ { "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook", "HookResultId": "59ef501c-0ac4-47c0-a193-e071cabf748d", "TypeName": "MyOrg::Security::ComplianceHook", "TypeVersionId": "00000001", "HookExecutionTarget": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/39f29d10-73ed-11f0-abc1-0affdfe4aebb", "InvokedAt": "2025-08-08T00:18:39.651Z", "FailureMode": "WARN", "HookStatusReason": "...", "InvocationPoint": "PRE_PROVISION", "Status": "HOOK_COMPLETE_FAILED" }, ... ] }

如需回應中欄位的說明,請參閱 AWS CloudFormation API 參考中的 HookResultSummary

依目標類型和目標 ID 篩選結果

下列命令會列出特定 Cloud Control API 請求的所有勾點調用結果。

aws cloudformation list-hook-results \ --target-type CLOUD_CONTROL \ --target-id d417b05b-9eff-46ef-b164-08c76aec1801 \ --region us-west-2

輸出範例:

{ "HookResults": [ { "TargetType": "CLOUD_CONTROL", "TargetId": "d417b05b-9eff-46ef-b164-08c76aec1801", "HookResults": [ { "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook", "HookResultId": "4e7f4766-d8fe-44e5-8587-5b327a148abe", "TypeName": "MyOrg::Security::ComplianceHook", "TypeVersionId": "00000001", "FailureMode": "WARN", "HookStatusReason": "...", "InvocationPoint": "PRE_PROVISION", "Status": "HOOK_COMPLETE_FAILED" }, ... ] } ] }

如需回應中欄位的說明,請參閱 AWS CloudFormation API 參考中的 HookResultSummary

取得特定調用的詳細結果

使用 get-hook-result命令來擷取特定勾點調用的詳細資訊,包括合規檢查結果和修復指導的註釋。

aws cloudformation get-hook-result \ --hook-result-id 59ef501c-0ac4-47c0-a193-e071cabf748d \ --region us-west-2

輸出範例:

{ "HookResultId": "59ef501c-0ac4-47c0-a193-e071cabf748d", "InvocationPoint": "PRE_PROVISION", "FailureMode": "WARN", "TypeName": "MyOrg::Security::ComplianceHook", "TypeVersionId": "00000001", "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/hook/MyOrg-Security-ComplianceHook", "Status": "HOOK_COMPLETE_FAILED", "HookStatusReason": "Hook completed with failed validations", "InvokedAt": "2025-08-08T00:18:39.651Z", "Target": { "TargetType": "RESOURCE", "TargetTypeName": "AWS::S3::Bucket", "TargetId": "my-s3-bucket", "Action": "CREATE" }, "Annotations": [ { "AnnotationName": "BlockPublicAccessCheck", "Status": "FAILED", "StatusMessage": "Bucket does not block public access", "RemediationMessage": "Enable block public access settings on the S3 bucket", "SeverityLevel": "HIGH" }, { "AnnotationName": "BucketEncryptionCheck", "Status": "PASSED", "StatusMessage": "Bucket has encryption configured correctly" } ] }

如需回應中欄位的說明,請參閱 AWS CloudFormation API 參考中的 GetHookResult