配置 MFA 删除 - Amazon Simple Storage Service

配置 MFA 删除

在 Amazon S3 存储桶中使用 S3 版本控制时,您可以选择通过将存储桶配置为启用 MFA(多重身份验证)删除来添加另一层安全保护。执行此操作时,存储桶拥有者必须在任何请求中包含两种形式的身份验证,以删除版本或更改存储桶的版本控制状态。

MFA 删除要求对以下任一操作进行额外身份验证:

  • 更改存储桶的版本控制状态

  • 永久删除对象版本

MFA 删除需要结合使用两种形式的身份验证:

  • 您的安全凭证

  • 在已批准的身份验证设备上显示的有效序列号、空格和 6 位代码的组合

MFA 删除因此可在某些情况下(例如在安全凭证被泄露时)提供更高的安全性。MFA 删除要求启动删除操作的用户证明其实际拥有具有 MFA 代码的 MFA 设备,并为删除操作增加额外的摩擦和安全性,从而帮助防止存储桶被意外删除。

要识别已启用了 MFA 删除的存储桶,您可以使用 Amazon S3 Storage Lens 存储统计管理工具指标。S3 Storage Lens 存储统计管理工具是一项云存储分析功能,您可以使用它在整个组织范围内了解对象存储的使用情况和活动。有关更多信息,请参阅使用 S3 Storage Lens 存储统计管理工具访问存储活动和使用情况。有关指标的完整列表,请参阅 S3 Storage Lens 存储统计管理工具指标词汇表

存储桶拥有者、创建存储存储桶的 AWS 账户(根账户)以及所有授权用户都可以启用版本控制。但是,只有存储桶拥有者(根账户)才能启用 MFA 删除。有关更多信息,请参阅 AWS 安全博客中的使用 MFA 保护对 AWS 的访问

注意

要将 MFA 删除与版本控制结合使用,请启用 MFA Delete。但是,您无法使用 AWS Management Console 启用 MFA Delete。您必须使用 AWS Command Line Interface (AWS CLI) 或 API。

有关将 MFA 删除与版本控制结合使用的示例,请参阅主题 在存储桶上启用版本控制 中的示例部分。

不能将 MFA 删除与生命周期配置一起使用。有关生命周期配置以及如何与其他配置交互的详细信息,请参阅 S3 生命周期如何与其它存储桶配置进行交互

要启用或禁用 MFA 删除,请使用对存储桶配置版本控制时所用的相同 API。Amazon S3 将 MFA 删除配置存储在用于存储桶版本控制状态的相同 versioning 子资源中。

<VersioningConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Status>VersioningState</Status> <MfaDelete>MfaDeleteState</MfaDelete> </VersioningConfiguration>

要使用 MFA 删除,您可以使用硬件或虚拟 MFA 设备来生成身份验证代码。以下示例显示了在硬件设备上显示的生成的身份验证代码。

硬件设备上显示的所生成的身份验证代码的示例。

MFA 删除和受 MFA 保护的 API 访问的功能旨在提供对不同方案的保护。您可以在存储存储桶上配置 MFA 删除,以协助确保存储桶中的数据不会被意外删除。受 MFA 保护的 API 访问用于在访问敏感的 Amazon S3 资源时,强制执行其他身份验证因素(MFA 代码)。您可以要求使用 MFA 创建的临时证书来完成针对这些 Amazon S3 资源的任何操作。有关示例,请参阅需要 MFA

有关如何购买和激活身份验证设备的更多信息,请参阅多重身份验证

启用 S3 版本控制并配置 MFA 删除

序列号是唯一标识 MFA 设备的数字。对于物理 MFA 设备,这是设备随附的唯一序列号。对于虚拟 MFA 设备,序列号是设备 ARN。

以下示例在存储桶上启用 S3 版本控制和多重身份验证(MFA)删除。

aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket1 --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa "SERIAL 123456"

有关使用 Amazon S3 REST API 指定 MFA 删除的更多信息,请参阅《Amazon Simple Storage Service API 参考》中的 PutBucketVersioning