我想要使用 AWS-ConfigureS3BucketLogging 執行手冊來修復不合規資源。不過,自動修復失敗,導致「動作執行失敗」錯誤。
簡短說明
AWS Config s3-bucket-logging-enabled 會檢查目標 Amazon Simple Storage Service (Amazon S3) 儲存貯體是否開啟記錄功能。AWS-ConfigureS3BucketLogging AWS Systems Manager 自動化執行手冊,然後修復不合規資源。
AWS-ConfigureS3BucketLogging 執行手冊必須具有下列許可:
解決方法
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
若要解決 Action execution failed 錯誤,您必須執行 describe-remediation-execution-status AWS CLI 命令,以檢閱詳細的錯誤訊息。
如需詳細資訊,請參閱如何對 AWS Config 中的修復動作失敗進行疑難排解?
存取遭拒
您會收到以下錯誤訊息:
"Step fails when it is Execute/Cancelling action.呼叫 PutBucketLogging 操作時發生錯誤 (AccessDenied): 存取遭拒。Please refer to Automation Service Troubleshooting Guide for more diagnosis details."
發生此錯誤的原因是 AutomationAssumeRole 角色沒有在不合規的 S3 儲存貯體上呼叫 PutBucketLogging API 的許可。使用下列範例政策允許角色呼叫 PutBucketLogging API:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:PutBucketLogging",
"Resource": [
"arn:aws:s3:::<BUCKET_NAME_1>",
"arn:aws:s3:::<BUCKET_NAME_2>",
"arn:aws:s3:::<BUCKET_NAME_3>"
]
}auto
]
}
注意: 如果您必須修復 AWS 區域中的所有 S3 儲存貯體,則使用aws:RequestedRegion 條件金鑰來限制角色的許可。
無效的執行參數
您會收到以下錯誤訊息:
"Invalid execution parameters sent to Systems Automation.The defined assume role is unable to be assumed."
發生此錯誤的原因是 Systems Manager Automation 服務無法擔任 AutomationAssumeRole 角色。使用下列範例政策允許系統管理員擔任 IAM 角色:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ssm.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
相關資訊
使用 AWS Config 規則修復不合規的資源
使用 AWS Config 自動修復功能的 Amazon S3 儲存貯體合規