Amazon Macie 如何监控 Amazon S3 数据安全性 - Amazon Macie

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

Amazon Macie 如何监控 Amazon S3 数据安全性

当你为你的账户启用 Amazon Macie 时 AWS 账户,Macie 会为你的账户创建一个 AWS Identity and Access Management (IAM) 服务相关角色。 AWS 区域此角色的权限策略允许 Macie 代表您呼叫其他人 AWS 服务 并监控 AWS 资源。通过使用此角色,Macie 会生成并维护您在该地区的亚马逊简单存储服务 (Amazon S3) Storage Service 通用存储桶的完整清单。Macie 还会监控和评估存储桶的安全性和访问控制。

如果您是组织的 Macie 管理员,则清单中包含有关您的账户和组织中成员账户的 S3 存储桶的统计数据和其他数据。利用这些数据,您可以使用 Macie 来监控和评估您的组织在 Amazon S3 数据资产中的安全状况。有关更多信息,请参阅 管理多个 账户

关键组件

Amazon Macie 使用多种功能和技术来提供和维护有关您的 S3 通用存储桶的库存数据,并监控和评估存储桶的安全和访问控制。

收集元数据和计算统计信息

为了生成和维护您的存储桶清单的元数据和统计信息,Macie 会直接从 Amazon S3 检索存储桶和对象元数据。对于每个存储桶,元数据包括:

  • 有关存储桶的一般信息,例如存储桶的名称、Amazon 资源名称 (ARN)、创建日期、加密设置、标签以及拥有 AWS 账户 该存储桶的账户 ID。

  • 适用于存储桶的账户级别权限设置,例如账户的阻止公有访问设置。

  • 存储桶的存储桶级别权限设置,例如存储桶的阻止公有访问设置以及源自存储桶策略或访问控制列表(ACL)的设置。

  • 存储分区的共享访问权限和复制设置,包括存储桶数据是复制到组织 AWS 账户 之外还是与之共享。

  • 存储桶中对象的对象计数和设置,例如存储桶中对象的数量以及按加密类型、文件类型和存储类划分的对象计数明细。

Macie 直接向您提供这些信息。Macie 还使用这些信息来计算统计信息,并对您的整个存储桶清单以及清单中各个存储桶的安全性和隐私性进行评测。例如,您可以找到清单中的总存储大小和存储桶数量、这些存储桶中的总存储大小和对象数量,以及 Macie 可以分析以检测存储桶中的敏感数据的总存储大小和对象数量。

默认情况下,元数据和统计信息包括由于分段上传不完整而存在的任何对象分段的数据。如果您手动刷新特定存储桶的对象元数据,Macie 会重新计算该存储桶和您的存储桶清单的总体统计信息,并从重新计算的值中排除对象分段的数据。下次 Macie 在每日刷新周期中从 Amazon S3 检索存储桶和对象元数据时,Macie 会更新您的清单数据并再次包含对象分段的数据。有关 Macie 何时检索存储桶和对象元数据的信息,请参阅数据刷新

请注意,Macie 无法通过分析对象分段检测敏感数据。Amazon S3 必须先将分段重组成一个或多个对象,让 Macie 进行分析。有关分段上传和对象分段的信息,包括如何根据生命周期规则自动删除分段,请参阅 Amazon Simple Storage Service 用户指南中的使用分段上传来上传和复制对象。要识别包含对象分段的存储桶,您可以参考 Amazon S3 Storage Lens 存储统计管理工具中的未完成分段上传。有关更多信息,请参阅 Amazon Simple Storage Service 用户指南中的评测您的存储活动和使用情况

监控存储桶的安全性和隐私性

为了帮助确保清单中存储桶级数据的准确性,Macie 会监控和分析 Amazon S3 数据可能发生的某些 AWS CloudTrail 事件。如果发生相关事件,Macie 会更新相应的清单数据。

例如,如果您为存储桶启用阻止公有访问设置,Macie 会更新有关该存储桶公有访问设置的所有数据。同样,如果您为存储桶添加或更新存储桶策略,Macie 会分析该策略并更新清单中的相关数据。

Macie 监控和分析以下 CloudTrail 事件的数据:

  • 账户级别的事件 — 以及 DeletePublicAccessBlock PutPublicAccessBlock

  • 存储桶级事件 — CreateBucket、、、、 DeleteAccountPublicAccessBlock、 DeleteBucket、DeleteBucketEncryption、 DeleteBucketPolicy、 DeleteBucketPublicAccessBlock、、DeleteBucketReplication、 DeleteBucketTagging、 PutAccountPublicAccessBlock、PutBucketAcl、 PutBucketEncryption、、 PutBucketPolicyPutBucketPublicAccessBlock、和 PutBucketReplication PutBucketTagging PutBucketVersioning

您无法启用对其他 CloudTrail 事件的监控,也无法禁用对上述任何事件的监控。有关上述事件的相应操作的详细信息,请参阅 Amazon Simple Storage Service API 参考

提示

要监控对象级事件,我们建议您使用亚马逊的 Amazon S3 保护功能。 GuardDuty此功能监控对象级的 Amazon S3 数据事件,并分析它们是否存在恶意和可疑活动。有关更多信息,请参阅《亚马逊 GuardDuty 用户指南》 GuardDuty中的 Amaz on S3 保护

评测存储桶的安全性和访问控制

为了评测存储桶级别的安全性和访问控制,Macie 使用基于逻辑的自动推理来分析适用于存储桶的基于资源的策略。Macie 还会分析适用于存储桶的账户和存储桶级别的权限设置。此分析考虑了存储桶策略、存储桶级别 ACL 以及账户和存储桶的阻止公有访问设置。

对于基于资源的策略,Macie 使用 Zelkova。Zelkova 是一个自动推理引擎,它将 AWS Identity and Access Management (IAM)策略转换为逻辑语句,并针对决策问题运行一套通用和专业的逻辑求解器(可满足性模数理论)。Macie 将 Zelkova 重复应用于具有越来越具体查询的策略,以表征该策略允许的行为类别。要详细了解 Zelkova 使用的求解器的性质,请参阅可满足模理论

重要

要对存储桶执行上述任务,该存储桶必须是 S3 通用存储桶。Macie 不会监控或分析 S3 目录存储桶。

此外,必须允许 Macie 访问存储桶。如果存储桶的权限设置阻止 Macie 检索该存储桶或存储桶对象的元数据,Macie 只能提供有关该存储桶的信息子集,例如存储桶的名称和创建日期。Macie 无法为存储桶执行任何其他任务。有关更多信息,请参阅 允许 Macie 访问 S3 存储桶和对象

数据刷新

当你为你的启用 Amazon Macie 时 AWS 账户,Macie 会直接从亚马逊 S3 检索你的 S3 通用存储桶和对象的元数据。此后,作为每日刷新周期的一部分,Macie 每天自动直接从 Amazon S3 检索存储桶和对象元数据。

在出现以下任一情况时,Macie 还会直接从 Amazon S3 检索桶元数据:

  • 您可以通过在 Amazon Macie 控制台上选择刷新 ( The refresh button, which is a button that contains an empty, dark gray circle with an arrow ) 来刷新您的清单数据。您可以每五分钟刷新一次数据。

  • 您以编程方式向 Amazon Macie API 提交DescribeBuckets请求,但在过去的五分钟内您尚未提交DescribeBuckets请求。

  • Macie 检测到相关 AWS CloudTrail 事件。

如果您选择手动刷新特定存储桶的最新对象元数据,Macie 还可以检索该数据。如果您最近创建了存储桶或在过去 24 小时内对存储桶的对象进行了重大更改,这会很有帮助。要手动刷新存储桶的对象元数据,请在控制台的 S3 存储桶页面的存储桶详细信息面板对象统计信息部分中选择刷新 ( The refresh button, which is a button that contains an empty, dark gray circle with an arrow )。此功能适用于存储 30,000 个或更少对象的存储桶。

每次 Macie 检索存储桶或对象元数据时,Macie 都会自动更新清单中的所有相关数据。如果 Macie 检测到影响存储桶安全性或隐私性的差异,则 Macie 会立即开始评测和分析这些更改。分析完成后,Macie 会更新您的清单中的相关数据。如果任何差异降低了存储桶的安全性或隐私性,则 Macie 还会创建适当的策略调查发现供您在必要时进行查看和补救。

要确定 Macie 最近检索您账户的存储桶或对象元数据的时间,您可以参考控制台上的上次更新时间字段。此字段显示在 “摘要” 控制面板、“S3 存储桶” 页面和 “S3 存储桶” 页面的存储桶详细信息面板上。(如果您使用 Amazon Macie API 查询清单数据,则该 lastUpdated 字段会提供此信息。) 如果您是某个组织的 Macie 管理员,则上次更新时间字段会指示 Macie 检索组织中账户数据的最早日期和时间。

在极少数情况下,在某些条件下,延迟和其他问题可能会阻止 Macie 检索存储桶和对象元数据。它们还可能延迟 Macie 收到的有关您的存储桶清单变更或各个存储桶的权限设置和策略的通知。例如, CloudTrail 事件的交付问题可能会导致延迟。如果发生此情况,Macie 会在下次执行每日刷新时(24 小时内)分析新数据和更新后的数据。

其他注意事项

在使用 Amazon Macie 监控和评测 Amazon S3 数据的安全状况时,请记住以下几点:

  • 清单数据仅适用于当前 AWS 区域的 S3 通用存储桶。要访问其他区域的数据,请在每个其他区域中启用 Macie 并使用它。

  • 如果您是组织的 Macie 管理员,则只有在当前区域为成员账户启用了 Macie 后,您才能访问该账户的清单数据。

  • 如果存储桶的权限设置阻止 Macie 检索有关该存储桶或存储桶对象的信息,则 Macie 无法评测和监控该存储桶数据的安全性和隐私性,也无法提供有关该存储桶的详细信息。

    为了帮助您识别属于这种情况的存储桶,Macie 会执行以下操作:

    • 在您的存储桶清单中,Macie 会显示该存储桶的警告图标 ( A red triangle with a red exclamation point in it )。有关存储桶的详细信息,Macie 仅显示字段和数据的子集:拥有 AWS 账户 该存储桶的账户 ID;存储桶的名称、Amazon 资源名称 (ARN)、创建日期和区域;以及 Macie 最近一次在每日刷新周期中检索存储桶和对象元数据的日期和时间。如果您使用 Amazon Macie API 查询清单数据,Macie 会为存储桶提供错误代码和消息,并且存储桶的大部分属性的值为空。

    • 摘要控制面板上,公有访问加密共享统计信息的存储桶的值为未知。(如果您使用 Amazon Macie API 查询统计信息,则这些统计信息的存储桶的值为unknown。) 此外,Macie 在计算存储对象统计信息的数据时会排除存储桶。

    要调查该问题,请在 Amazon S3 中查看存储桶的策略和权限设置。例如,存储桶可能具有限制性的存储桶策略。有关更多信息,请参阅 允许 Macie 访问 S3 存储桶和对象

  • 有关访问和权限的数据仅限于账户和存储桶级别的设置。它不反映确定对存储桶中特定对象的访问的对象级别设置。例如,如果为存储桶中的特定对象启用了公有访问权限,则 Macie 不会报告该存储桶或该存储桶的对象可公开访问。

    要监控对象级操作并识别潜在的安全风险,我们建议您使用 Amazon 的 Amazon S3 保护功能。 GuardDuty此功能监控对象级的 Amazon S3 数据事件,并分析它们是否存在恶意和可疑活动。有关更多信息,请参阅《亚马逊 GuardDuty 用户指南》 GuardDuty中的 Amaz on S3 保护

  • 如果您手动刷新特定存储桶的对象元数据,Macie 会暂时将适用于对象的加密统计信息报告为未知。下次 Macie 执行每日数据刷新时(24 小时内),Macie 会重新评测对象的加密元数据,并再次报告统计信息的定量数据。

  • 如果您手动刷新特定存储桶的对象元数据,由于分段上传不完整,Macie 会暂时排除该存储桶包含的任何对象部分的数据。下次 Macie 执行每日数据刷新时(24 小时内),Macie 会重新计算存储桶对象的数量值和存储大小值,并在这些计算中包括各部分的数据。

  • 在极少数情况下,Macie 可能无法确定存储桶是可公开访问还是共享,或者需要对新对象进行服务器端加密。例如,临时问题可能会阻止 Macie 检索和分析必需的数据。或者 Macie 可能无法完全确定一个或多个策略语句是否授予对外部实体的访问权限。在这些情况下,Macie 会将清单中的相关统计信息和字段报告为未知。要调查这些情况,请检查 Amazon S3 中存储桶的策略和权限设置。

另请注意,只有在您为账户启用 Macie 后,存储桶的安全性或隐私性降低时,Macie 才会生成策略调查发现。例如,如果您在启用 Macie 后禁用了存储桶的阻止公开访问设置,Macie 会为该存储桶生成一个策略:iam BlockPublicAccessDisabled user/S3 查找结果。但是,如果您在启用 Macie 时禁用了存储桶的封禁公共访问设置,但这些设置继续处于禁用状态,则 Macie 不会为该存储桶生成策略:iamU BlockPublicAccessDisabled ser/S3 查找。

此外,当 Macie 评测存储桶的安全性和隐私性时,它不会检查访问日志,也不会分析账户的用户、角色和其他相关配置。相反,Macie 会分析和报告指明潜在安全风险的关键设置数据。例如,如果一个策略调查发现指明存储桶可公开访问,则不一定意味着外部实体访问了该存储桶。同样,如果政策调查结果表明存储桶与组织 AWS 账户 外部人员共享,则 Macie 不会尝试确定这种访问是否有意且安全。相反,这些调查发现指明外部实体可能会访问存储桶的数据,这可能会带来意想不到的安全风险。