AWS::S3::Bucket TopicConfiguration
A container for specifying the configuration for publication of messages to an Amazon Simple Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Event" :
String
, "Filter" :NotificationFilter
, "Topic" :String
}
YAML
Event:
String
Filter:NotificationFilter
Topic:String
Properties
Event
-
The Amazon S3 bucket event about which to send notifications. For more information, see Supported Event Types in the Amazon S3 User Guide.
Required: Yes
Type: String
Update requires: No interruption
Filter
-
The filtering rules that determine for which objects to send notifications. For example, you can create a filter so that Amazon S3 sends notifications only when image files with a
.jpg
extension are added to the bucket.Required: No
Type: NotificationFilter
Update requires: No interruption
Topic
-
The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.
Required: Yes
Type: String
Update requires: No interruption
Examples
Receive S3 bucket notifications to an SNS topic
The following example template shows an Amazon S3 bucket with a notification configuration that sends an event to the specified SNS topic when S3 has lost all replicas of an object.
JSON
{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": { "AccessControl": "Private", "NotificationConfiguration": { "TopicConfigurations": [ { "Topic": "arn:aws:sns:us-east-1:123456789012:TestTopic", "Event": "s3:ReducedRedundancyLostObject" } ] } } } }, "Outputs": { "BucketName": { "Value": { "Ref": "S3Bucket" }, "Description": "Name of the sample Amazon S3 bucket with a notification configuration." } } }
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: S3Bucket: Type: 'AWS::S3::Bucket' Properties: AccessControl: Private NotificationConfiguration: TopicConfigurations: - Topic: 'arn:aws:sns:us-east-1:123456789012:TestTopic' Event: 's3:ReducedRedundancyLostObject' Outputs: BucketName: Value: !Ref S3Bucket Description: Name of the sample Amazon S3 bucket with a notification configuration.