You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现AWS S3 Bucket自动删除?CloudFormation配置咨询

AWS CloudFormation S3 Bucket 定时自动删除方案

一、CloudFormation模板无法直接实现S3 Bucket定时自动删除

你尝试的DeletionPolicy: Delete属于CloudFormation的资源删除策略,它的作用是当你手动删除整个CloudFormation栈时,控制CloudFormation是否删除该S3 Bucket(仅当桶为空时才能成功删除),并非用于配置Bucket的定时自动删除逻辑。CloudFormation本身没有内置的定时删除Bucket的模板配置项。

二、实现S3 Bucket程序化自动删除的最佳方式

以下两种是最常用的落地方案:

1. 定时删除包含S3 Bucket的CloudFormation栈

  • 核心逻辑:既然Bucket通过CloudFormation栈创建,定时删除整个栈即可连带删除Bucket(需确保Bucket为空)。
  • 操作步骤:
    • 用EventBridge(原CloudWatch Events)创建定时规则,设置触发时间(例如创建桶后30天)。
    • 规则目标选择直接调用CloudFormation的DeleteStack API,或者触发Lambda函数执行删除栈的逻辑。
    • 提前在CloudFormation模板中给S3 Bucket配置生命周期规则,自动清理桶内所有对象(包括版本化对象、删除标记),确保删除栈时Bucket为空,避免删除失败。

2. 单独定时删除S3 Bucket(不依赖栈删除)

  • 核心逻辑:先确保Bucket在指定时间后为空,再触发删除Bucket的操作。
  • 操作步骤:
    • 在CloudFormation模板中给S3 Bucket配置生命周期规则,设置在指定时间后自动删除所有对象、旧版本对象及删除标记(如果开启了版本化)。
    • 用EventBridge创建定时规则,在生命周期规则完成清理的时间点之后,触发Lambda函数调用S3的DeleteBucket API删除空Bucket。

内容的提问来源于stack exchange,提问作者Java Enthusiast

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 07:01:02