

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 恶意软件防护计划状态故障排除
<a name="troubleshoot-s3-malware-protection-status-errors"></a>

对于任何受保护的存储桶，都会根据排名 GuardDuty 显示**状态**。例如，如果受保护的存储桶在 “**错误**” 和 “**警告**” 类别下都存在问题，则 GuardDuty 将首先显示与**错误**状态相关的问题。

以下列表包括有关恶意软件防护计划状态的错误和警告。

**错误**  
+ [EventBridge 此 S3 存储桶的通知已禁用](#eventbridge-notification-disabled-malware-protection-s3-error)
+ [EventBridge 缺少用于接收 S3 存储桶事件的托管规则](#eventbridge-managed-rule-missing-malware-protection-s3-error)
+ [S3 存储桶已不再存在](#bucket-no-longer-exists-malware-protection-s3-error)

**警告**  
[无法放置测试对象](#unable-put-test-object-malware-protection-s3-warning)

## EventBridge 此 S3 存储桶的通知已禁用
<a name="eventbridge-notification-disabled-malware-protection-s3-error"></a>

相关状态原因代码是 `EVENTBRIDGE_MANAGED_EVENTS_DELIVERY_DISABLED`。

**状态详细信息**  
GuardDuty 用于 EventBridge 在将新对象上传到此 S3 存储桶时收到通知。您的 IAM 角色中缺少此权限。

**故障排除步骤**  
**选项 1：将以下权限语句添加到您的 IAM 角色中：**  

```
{
          "Sid": "AllowEnableS3EventBridgeEvents",
          "Effect": "Allow",
          "Action": [
             "s3:PutBucketNotification",
             "s3:GetBucketNotification"
             ],
          "Resource": [
             "arn:aws:s3:::amzn-s3-demo-bucket"
            ]
}
```
将 *amzn-s3-demo-bucket* 替换为您的 Amazon S3 桶名称。  

**选项 2：使用 Amazon S3 控制台启用 EventBridge 通知**

1. 打开 Amazon S3 控制台，网址为 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在**存储桶**页面的**通用存储桶**选项卡下，选择与此错误关联的存储桶名称。

1. 在此存储桶的页面上，选择**属性**选项卡。

1. 在 “**亚马逊 EventBridge**” 部分下，选择 “**编辑”**。

1. 在 **“编辑亚马逊 EventBridge**” 页面上，在 “**向亚马逊 EventBridge 发送此存储桶中所有事件的通知” 中**，选择 “**开**”。

1. 选择**保存更改**。
**状态**列的值可能需要几分钟时间才会变为**活动**。

## EventBridge 缺少用于接收 S3 存储桶事件的托管规则
<a name="eventbridge-managed-rule-missing-malware-protection-s3-error"></a>

相关状态原因代码是 `EVENTBRIDGE_MANAGED_RULE_DISABLED`。

 **状态详细信息**   
缺少 EventBridge 管理规则设置的托管 EventBridge 规则权限。

**故障排除步骤**  
将以下权限语句添加到您的 IAM 角色中：  

```
{
         "Sid": "AllowManagedRuleToSendS3EventsToGuardDuty",
        "Effect": "Allow",
        "Action": [
                "events:PutRule",
                "events:DeleteRule",
                "events:PutTargets",
                "events:RemoveTargets"
            ],
        "Resource": [
           "arn:aws:events:*:*:rule/DO-NOT-DELETE-AmazonGuardDutyMalwareProtectionS3*"
           ],
        "Condition": {
           "StringEquals": {
              "events:ManagedBy": "malware-protection-plan.guardduty.amazonaws.com"
              }
           }
}
```
**状态**列的值可能需要几分钟时间才会变为**活动**。

## S3 存储桶已不再存在
<a name="bucket-no-longer-exists-malware-protection-s3-error"></a>

相关状态原因代码是 `PROTECTED_RESOURCE_DELETED`。

 **状态详细信息**   
此 S3 存储桶已从您的账户中删除，不复存在。

 **故障排除步骤**   
如果 S3 存储桶的删除并非有意，则可以使用 Amazon S3 控制台创建新的存储桶。  
成功创建存储桶后，按照[为存储桶配置 S3 恶意软件防护](configuring-malware-protection-for-s3-guardduty.md)页面下方的步骤启用 S3 恶意软件防护。

## 无法放置测试对象
<a name="unable-put-test-object-malware-protection-s3-warning"></a>

相关状态原因代码是 `INSUFFICIENT_TEST_OBJECT_PERMISSIONS`。

**注意**  
添加测试对象的权限是可选的。您的 IAM 角色缺少此权限并不妨碍 S3 恶意软件防护对新上传的对象启动恶意软件扫描。成功启动扫描后，恶意软件防护计划的**状态**可能需要几分钟时间才会从**警告**变为 **活动**。  
如果 IAM 角色已经包含此权限，则此警告表示存在限制性的 Amazon S3 存储桶策略，不允许将测试对象放入此 S3 存储桶中的 IAM 访问权限。

**状态详细信息**  
要验证所选存储桶的设置，请在存储桶中 GuardDuty 放置一个测试对象。

**故障排除步骤**  
您可以选择更新该 IAM 角色以包含缺失的权限。向选定的 IAM 角色添加以下权限，以便 GuardDuty 可以将测试对象放入所选资源：  

```
{
         "Sid": "AllowPutValidationObject",
         "Effect": "Allow",
         "Action": [
           "s3:PutObject"
           ],
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket/malware-protection-resource-validation-object"
           ]
}
```
将 *amzn-s3-demo-bucket* 替换为您的 Amazon S3 桶名称。有关 IAM 角色权限的信息，请参阅[创建或更新 IAM 角色策略](malware-protection-s3-iam-policy-prerequisite.md)。  
**状态**列的值可能需要几分钟时间才会变为**活动**。