Amazon S3 事件通知 - Amazon Simple Storage Service

Amazon S3 事件通知

您可以使用 Amazon S3 事件通知特征在 S3 存储桶中发生某些事件时接收通知。要启用通知,请添加一个通知配置,该配置标识您希望 Amazon S3 发布的事件。确保它还标识您希望 Amazon S3 将通知发送到的目的地。您可以将此配置存储在与存储桶关联的通知子资源中。有关更多信息,请参阅存储桶配置选项。Amazon S3 提供了一个 API,用于管理此子资源。

重要

Amazon S3 事件通知设计为至少传送一次。通常,事件通知在几秒内传输,不过有时可能需要一分钟或更长时间。

Amazon S3 事件通知概述

目前,Amazon S3 可以发布用于以下事件的通知:

  • 新的对象创建事件

  • 对象移除事件

  • 还原对象事件

  • 低冗余存储 (RRS) 对象丢失事件

  • 复制事件

  • S3 生命周期到期事件

  • S3 生命周期转换事件

  • S3 Intelligent-Tiering 自动归档事件

  • 对象标记事件

  • 对象 ACL PUT 事件

有关受支持事件类型的完整描述,请参阅 SQS、SNS 和 Lambda 支持的事件类型

Amazon S3 可以将事件通知消息发送到以下目标。您在通知配置中指定这些目标的 Amazon Resource Name (ARN) 值。

  • Amazon Simple Notification Service (Amazon SNS) 主题

  • Amazon Simple Queue Service (Amazon SQS) 队列

  • AWS Lambda 函数

  • Amazon EventBridge

有关更多信息,请参阅受支持的事件目标

注意

不支持将 Amazon Simple Queue Service FIFO(先进先出)队列作为 Amazon S3 事件通知目标。要向 Amazon SQS FIFO 队列发送 Amazon S3 事件的通知,您可以使用 Amazon EventBridge。有关更多信息,请参阅启用 Amazon EventBridge

警告

如果您的通知写入触发通知的同一存储桶,则可能会导致执行循环。例如,如果每当上传一个对象,存储桶就触发某个 Lambda 函数,而该函数又上传一个对象给存储桶,则该函数间接触发了自身。为避免这种情况,请使用两个存储桶,或将触发器配置为仅适用于传入对象所用的前缀。

有关将 Amazon S3 通知与 AWS Lambda 结合使用的更多信息和示例,请参阅 AWS Lambda 开发人员指南中的结合使用 AWS Lambda 和 Amazon S3

有关每个存储桶可以创建的事件通知配置数的更多信息,请参阅 AWS 一般参考中的 Amazon S3 服务配额

有关事件通知的更多信息,请参阅以下部分: