为您的存储桶启用 S3 的恶意软件防护 - Amazon GuardDuty

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

为您的存储桶启用 S3 的恶意软件防护

本节提供有关如何为自己账户中的存储桶启用 S3 恶意软件防护的详细步骤。在按照本节中的步骤进行操作之前,您需要一个具有帮助代表您 GuardDuty 采取行动的权限的IAM角色。有关更多信息,请参阅 先决条件-创建或更新IAM角色策略

您可以选择首选访问方法,为您的存储桶启用 S3 的恶意软件防护( GuardDuty 控制台或API/AWS CLI)。

主题

    以下各节提供了您将在 GuardDuty 控制台中体验到的 step-by-step演练。

    使用 GuardDuty 控制台为 S3 启用恶意软件防护

    输入 S3 存储桶详细信息

    使用以下步骤提供 Amazon S3 存储桶的详细信息:

    1. 登录 AWS Management Console 并打开 GuardDuty 控制台,网址为https://console.aws.amazon.com/guardduty/

    2. 使用页面右上角的 AWS 区域 选择器,选择要为 S3 启用恶意软件防护的区域。

    3. 在导航窗格中,选择 S3 的恶意软件防护

    4. 在 “受保护的存储桶” 部分中,选择 “启用”,为属于您自己 AWS 账户的 S3 存储桶启用 S3 的恶意软件防护。

    5. 输入 S3 存储桶详细信息下,输入 Amazon S3 存储桶名称。或者,选择 “浏览 S3” 以选择 S3 存储桶。

      S3 存储桶和为 S3 启用恶意软件防护的 AWS 账户 位置必须相同。 AWS 区域 例如,如果您的账户属于该us-east-1区域,则您的 Amazon S3 存储桶区域也必须属于该区域us-east-1

    6. 在 “前缀” 下,您可以选择 S3 存储桶中的所有对象或以特定前缀开头的对象。

      • 如果您想 GuardDuty 扫描选定存储桶中所有新上传的对象,请选择 S3 存储桶中的所有对象。

      • 如果要扫描新上传的属于特定前缀的对象,请选择以特定前缀开头的对象。此选项可帮助您将恶意软件扫描的范围仅集中在选定的对象前缀上。有关使用前缀的更多信息,请参阅 Amazon S3 用户指南中的使用文件夹在 Amazon S 3 控制台中组织对象

        选择添加前缀并输入前缀。您最多可以添加五个前缀。

    为扫描的对象启用标记

    此为可选步骤。当您在对象上传到存储桶之前启用标记选项时,在完成扫描后, GuardDuty将添加一个预定义的标签,键为GuardDutyMalwareScanStatus,值为扫描结果。要以最佳方式使用 S3 的恶意软件防护,我们建议启用扫描结束后向 S3 对象添加标签的选项。适用标准 S3 对象标签费用。有关更多信息,请参阅 S3 恶意软件防护的定价和使用成本

    为什么要启用标记?

    GuardDuty 向 S3 对象添加标签的注意事项:

    • 默认情况下,您最多可以将 10 个标签与一个对象关联。有关更多信息,请参阅 Amazon S3 用户指南中的使用标签对存储进行分类

      如果所有 10 个标签都已在使用中,则 GuardDuty 无法将预定义的标签添加到扫描的对象。 GuardDuty 还会将扫描结果发布到您的默认 EventBridge 事件总线。有关更多信息,请参阅 使用 Amazon 监控 S3 对象扫描 EventBridge

    • 当所选IAM角色不包括标记 S3 对象的权限时,即使为受保护的存储桶启用了标记, GuardDuty 也无法向扫描的 S3 对象添加标签。 GuardDuty 有关标记所需的IAM角色权限的更多信息,请参阅先决条件-创建或更新IAM角色策略

      GuardDuty 还会将扫描结果发布到您的默认 EventBridge 事件总线。有关更多信息,请参阅 使用 Amazon 监控 S3 对象扫描 EventBridge

    在 “标记已扫描对象” 下选择一个选项

    • 如果 GuardDuty 要为扫描的 S3 对象添加标签,请选择标记对象

    • 如果您不 GuardDuty 想为扫描的 S3 对象添加标签,请选择不标记对象

    权限

    使用以下步骤选择具有代表您执行恶意软件扫描操作所需权限的IAM角色。这些操作可能包括扫描新上传的 S3 对象以及(可选)向这些对象添加标签。

    选择IAM角色名称
    1. 如果您已经执行了以下步骤先决条件-创建或更新IAM角色策略,请执行以下操作:

      1. 在 “权限” 部分下,为IAM角色名称选择包含必要权限的IAM角色名称。

    2. 如果您尚未执行以下步骤先决条件-创建或更新IAM角色策略,请执行以下操作:

      1. 选择 “查看权限”

      2. 在 “权限详细信息” 下,选择 “策略” 选项卡。这显示了所需IAM权限的模板。

        复制此模板,然后在 “权限详细信息” 窗口末尾选择 “关闭”。

      3. 选择附加策略,在新选项卡中打开IAM控制台。您可以选择使用复制的模板中的权限创建新IAMIAM角色或更新现有角色。

        此模板包含占位符值,您必须将其替换为与您的存储桶关联的相应值和 AWS 账户。

      4. 使用 GuardDuty 控制台返回浏览器选项卡。再次选择 “查看权限”

      5. 在 “权限详细信息” 下,选择 “信任关系” 选项卡。这显示了您的IAM角色的信任关系策略模板。

        复制此模板,然后在 “权限详细信息” 窗口末尾选择 “关闭”。

      6. 转到打开IAM控制台的浏览器选项卡。将此信任关系策略添加到您的首选IAM角色中。

    3. 要向为此受保护资源创建的恶意软件防护计划 ID 添加标签,请继续下一节;否则,请选择此页面末尾的启用,将 S3 存储桶添加为受保护资源。

    (可选)标记恶意软件防护计划 ID

    这是一个可选步骤,可帮助您向将为您的 S3 存储桶资源创建的恶意软件防护计划资源添加标签。

    每个标签分为两部分:标签键和可选标签值。有关标记及其优势的更多信息,请参阅为资源添加标签。 AWS

    向您的恶意软件防护计划资源添加标签
    1. 输入标签的密钥和可选。标签键和标签值均区分大小写。有关标签键名称和标签值的信息,请参阅标签命名限制和要求

    2. 要向您的恶意软件防护计划资源添加更多标签,请选择添加新标签并重复上一步操作。您最多可以为每个 资源添加 50 个标签。

    3. 请选择 启用

    本节包括您希望在您的 AWS 环境中以编程方式为 S3 启用恶意软件防护的步骤。这需要您在此步骤中创建的IAM角色 Amazon 资源名称 (ARN)-先决条件-创建或更新IAM角色策略

    使用 API /以编程方式为 S3 启用恶意软件防护 CLI
    • 通过使用 API

      运行,CreateMalwareProtectionPlan为属于您自己账户的存储桶启用 S3 的恶意软件防护。

    • 通过使用 AWS CLI

      根据您希望如何为 S3 启用恶意软件防护,以下列表提供了特定用例的 AWS CLI 示例命令。运行这些命令时,请替换 placeholder examples shown in red,其值与您的账户相符。

      AWS CLI 命令示例
      • 使用以下 AWS CLI 命令为未标记已扫描的 S3 对象的存储桶启用 S3 恶意软件防护:

        aws guardduty create-malware-protection-plan --role "arn:aws:iam::111122223333:role/role-name" --protected-resource "S3Bucket"={"BucketName"="amzn-s3-demo-bucket1"}
      • 使用以下 AWS CLI 命令为具有特定对象前缀且未标记已扫描的 S3 对象的存储桶启用恶意软件防护:

        aws guardduty create-malware-protection-plan --role "arn:aws:iam::111122223333:role/role-name" --protected-resource '{"S3Bucket":{"BucketName":"amzn-s3-demo-bucket1", "ObjectPrefixes": ["Object1","Object1"]}}'
      • 使用以下 AWS CLI 命令为启用已扫描 S3 对象标记的存储桶启用 S3 的恶意软件防护:

        aws guardduty create-malware-protection-plan --role "arn:aws:iam::111122223333:role/role-name" --protected-resource "S3Bucket"={"BucketName"="amzn-s3-demo-bucket1"} --actions "Tagging"={"Status"="ENABLED"}

      成功运行这些命令后,将生成一个唯一的恶意软件防护计划 ID。要执行诸如更新或禁用存储桶保护计划之类的操作,您需要此恶意软件防护计划 ID。