S3 对象锁定保留 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

S3 对象锁定保留

可以使用 Amazon S3 批量操作对 Amazon S3 对象执行大规模批量操作。可以使用对象锁定保留操作,通过监管模式或合规模式来为对象应用保留日期。这些保留模式会应用不同级别的保护。可将任一保留模式应用于任意对象版本。与依法保留类似,保留日期可防止覆盖或删除对象。Amazon S3 存储在对象的元数据中指定的保留到期日,并保护指定的对象版本,直到保留期到期。

可以将 S3 批量操作与对象锁定结合使用,以便同时管理许多 Amazon S3 对象的保留日期。可以在清单中指定目标对象的列表,并将该清单提交到批量操作以完成操作。有关更多信息,请参阅 S3 对象锁定保留期限

具有保留日期的任务 S3 分批操作将持续运行,直至达到完成、取消或失败状态。当要通过单个请求添加、更改或移除许多对象的保留日期时,建议使用 S3 批量操作和 S3 对象锁定保留。

在处理清单中的任何密钥之前,分批操作会验证是否已在您的存储桶上启用对象锁定。要执行操作和验证,批量操作需要 Amazon Identity and Access Management(IAM)角色中的 s3:GetBucketObjectLockConfigurations3:PutObjectRetention 权限,来支持批量操作代表您调用对象锁定。有关更多信息,请参阅 对象锁定注意事项

有关将此操作与 REST API 结合使用的信息,请参阅《Amazon Simple Storage Service API 参考》CreateJob 操作中的 S3PutObjectRetention

有关使用此操作的 Amazon Command Line Interface(Amazon CLI)示例,请参阅使用 Amazon CLI。有关 适用于 Java 的 Amazon SDK 示例,请参阅使用适用于 Java 的 Amazon SDK

限制和局限性

使用批量操作来应用对象锁定保留期时,以下限制和局限性适用:

  • S3 批量操作不会进行任何存储桶级别的更改。

  • 必须在执行任务的存储桶上配置版本控制和 S3 对象锁定。

  • 清单中列出的所有对象都必须位于同一个存储桶中。

  • 除非清单中明确指定了版本,否则该操作将适用于最新版本的对象。

  • 您需要在 IAM 角色中拥有 s3:PutObjectRetention 权限,才能使用对象锁定保留任务。

  • 需要 s3:GetBucketObjectLockConfiguration IAM 权限,才能确认为您正在对其执行任务的 S3 存储桶启用了对象锁定。

  • 只能在应用 COMPLIANCE 模式保留日期的情况下延长对象的保留期,并且不能缩短此保留期。