Package-level declarations
Types
Builder for AccessGrantGranteeArgs.
The Virtual Private Cloud (VPC) configuration for a bucket access point.
Builder for AccessPointVpcConfigurationArgs.
Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. For more information, see Stopping Incomplete Multipart Uploads Using a Bucket Lifecycle Policy in the Amazon S3 User Guide.
Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see Amazon S3 Transfer Acceleration in the Amazon S3 User Guide.
Builder for BucketAccelerateConfigurationArgs.
Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS-account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS-account that owns the source object.
Builder for BucketAccessControlTranslationArgs.
Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.
Builder for BucketAnalyticsConfigurationArgs.
Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more information, see Enabling Cross-Origin Resource Sharing in the Amazon S3 User Guide.
Builder for BucketCorsConfigurationArgs.
Specifies a cross-origin access rule for an Amazon S3 bucket.
Builder for BucketCorsRuleArgs.
Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.
Builder for BucketDataExportArgs.
The container element for optionally specifying the default Object Lock retention settings for new objects placed in the specified bucket. + The `DefaultRetention`
settings require both a mode and a period.
Builder for BucketDefaultRetentionArgs.
Specifies whether Amazon S3 replicates delete markers. If you specify a `Filter`
in your replication configuration, you must also include a `DeleteMarkerReplication`
element. If your `Filter`
includes a `Tag`
element, the `DeleteMarkerReplication````Status`
must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see Basic Rule Configuration. For more information about delete marker replication, see Basic Rule Configuration. If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see Backward Compatibility. @property status Indicates whether to replicate delete markers. Disabled by default.
Builder for BucketDeleteMarkerReplicationArgs.
Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket.
Builder for BucketDestinationArgs.
Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3), AWS KMS-managed keys (SSE-KMS), or dual-layer server-side encryption with KMS-managed keys (DSSE-KMS). For information about the Amazon S3 default encryption feature, see Amazon S3 Default Encryption for S3 Buckets in the Amazon S3 User Guide.
Builder for BucketEncryptionArgs.
Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects. If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
Builder for BucketEncryptionConfigurationArgs.
Amazon S3 can send events to Amazon EventBridge whenever certain events happen in your bucket, see Using EventBridge in the Amazon S3 User Guide. Unlike other destinations, delivery of events to EventBridge can be either enabled or disabled for a bucket. If enabled, all events will be sent to EventBridge and you can use EventBridge rules to route events to additional targets. For more information, see What Is Amazon EventBridge in the Amazon EventBridge User Guide
Builder for BucketEventBridgeConfigurationArgs.
Specifies the Amazon S3 object key name to filter on. An object key name is the name assigned to an object in your Amazon S3 bucket. You specify whether to filter on the suffix or prefix of the object key name. A prefix is a specific string of characters at the beginning of an object key name, which you can use to organize objects. For example, you can start the key names of related objects with a prefix, such as `2023-`
or `engineering/`
. Then, you can use `FilterRule`
to find objects in a bucket with key names that have the same prefix. A suffix is similar to a prefix, but it is at the end of the object key name instead of at the beginning.
Builder for BucketFilterRuleArgs.
Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket. For information about the S3 Intelligent-Tiering storage class, see Storage class for automatically optimizing frequently and infrequently accessed objects.
Specifies the inventory configuration for an Amazon S3 bucket. For more information, see GET Bucket inventory in the Amazon S3 API Reference.
Builder for BucketInventoryConfigurationArgs.
Describes the LAMlong functions to invoke and the events for which to invoke them.
Builder for BucketLambdaConfigurationArgs.
Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see Object Lifecycle Management in the Amazon S3 User Guide.
Builder for BucketLifecycleConfigurationArgs.
Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket. For examples and more information, see PUT Bucket logging in the Amazon S3 API Reference. To successfully complete the `AWS::S3::Bucket LoggingConfiguration`
request, you must have `s3:PutObject`
and `s3:PutObjectAcl`
in your IAM permissions.
Builder for BucketLoggingConfigurationArgs.
The metadata table configuration of an S3 general purpose bucket. For more information, see Accelerating data discovery with S3 Metadata and Setting up permissions for configuring metadata tables.
A container specifying replication metrics-related settings enabling replication metrics and events.
Builder for BucketMetricsArgs.
Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For examples, see AWS::S3::Bucket. For more information, see PUT Bucket metrics in the Amazon S3 API Reference.
Builder for BucketMetricsConfigurationArgs.
Specifies when noncurrent object versions expire. Upon expiration, S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that S3 delete noncurrent object versions at a specific period in the object's lifetime. For more information about setting a lifecycle rule configuration, see AWS::S3::Bucket Rule.
Container for the transition rule that describes when noncurrent objects transition to the `STANDARD_IA`
, `ONEZONE_IA`
, `INTELLIGENT_TIERING`
, `GLACIER_IR`
, `GLACIER`
, or `DEEP_ARCHIVE`
storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the `STANDARD_IA`
, `ONEZONE_IA`
, `INTELLIGENT_TIERING`
, `GLACIER_IR`
, `GLACIER`
, or `DEEP_ARCHIVE`
storage class at a specific period in the object's lifetime. If you specify this property, don't specify the `NoncurrentVersionTransitions`
property.
Describes the notification configuration for an Amazon S3 bucket. If you create the target resource and related permissions in the same template, you might have a circular dependency. For example, you might use the `AWS::Lambda::Permission`
resource to grant the bucket permission to invoke an AWS Lambda function. However, AWS CloudFormation can't create the bucket until the bucket has permission to invoke the function (AWS CloudFormation checks whether the bucket can invoke the function). If you're using Refs to pass the bucket name, this leads to a circular dependency. To avoid this dependency, you can create all resources without specifying the notification configuration. Then, update the stack with a notification configuration. For more information on permissions, see AWS::Lambda::Permission and Granting Permissions to Publish Event Notification Messages to a Destination.
Specifies object key name filtering rules. For information about key name filtering, see Configuring event notifications using object key name filtering in the Amazon S3 User Guide.
Builder for BucketNotificationFilterArgs.
Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.
Builder for BucketObjectLockConfigurationArgs.
Specifies the Object Lock rule for the specified object. Enable the this rule when you apply `ObjectLockConfiguration`
to a bucket.
Builder for BucketObjectLockRuleArgs.
Specifies the container element for Object Ownership rules. S3 Object Ownership is an Amazon S3 bucket-level setting that you can use to disable access control lists (ACLs) and take ownership of every object in your bucket, simplifying access management for data stored in Amazon S3. For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.
Builder for BucketOwnershipControlsArgs.
Specifies an Object Ownership rule. S3 Object Ownership is an Amazon S3 bucket-level setting that you can use to disable access control lists (ACLs) and take ownership of every object in your bucket, simplifying access management for data stored in Amazon S3. For more information, see Controlling ownership of objects and disabling ACLs in the Amazon S3 User Guide.
Builder for BucketOwnershipControlsRuleArgs.
The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see The Meaning of "Public" in the Amazon S3 User Guide.
Specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 detects specified events.
Builder for BucketQueueConfigurationArgs.
Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
Builder for BucketRedirectAllRequestsToArgs.
Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.
Builder for BucketRedirectRuleArgs.
A filter that you can specify for selection for modifications on replicas.
Builder for BucketReplicaModificationsArgs.
A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB. The latest version of the replication configuration XML is V2. For more information about XML V2 replication configurations, see Replication configuration in the Amazon S3 User Guide.
Builder for BucketReplicationConfigurationArgs.
A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).
Builder for BucketReplicationDestinationArgs.
A container for specifying rule filters. The filters determine the subset of objects to which the rule applies. This element is required only if you specify more than one filter. For example:
Specifies which Amazon S3 objects to replicate and where to store the replicas.
Builder for BucketReplicationRuleArgs.
A filter that identifies the subset of objects to which the replication rule applies. A `Filter`
must specify exactly one `Prefix`
, `TagFilter`
, or an `And`
child element.
Builder for BucketReplicationRuleFilterArgs.
A container specifying S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC is enabled and the time when all objects and operations on objects must be replicated. Must be specified together with a `Metrics`
block.
Builder for BucketReplicationTimeArgs.
A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics `EventThreshold`
.
Builder for BucketReplicationTimeValueArgs.
Specifies the redirect behavior and when a redirect is applied. For more information about routing rules, see Configuring advanced conditional redirects in the Amazon S3 User Guide.
Builder for BucketRoutingRuleArgs.
A container for describing a condition that must be met for the specified redirect to apply. For example, 1. If request is for pages in the `/docs`
folder, redirect to the `/documents`
folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error.
Builder for BucketRoutingRuleConditionArgs.
Specifies lifecycle rules for an Amazon S3 bucket. For more information, see Put Bucket Lifecycle Configuration in the Amazon S3 API Reference. You must specify at least one of the following properties: `AbortIncompleteMultipartUpload`
, `ExpirationDate`
, `ExpirationInDays`
, `NoncurrentVersionExpirationInDays`
, `NoncurrentVersionTransition`
, `NoncurrentVersionTransitions`
, `Transition`
, or `Transitions`
.
Builder for BucketRuleArgs.
A container for object key name prefix and suffix filtering rules. For more information about object key name filtering, see Configuring event notifications using object key name filtering in the Amazon S3 User Guide. The same type of filter rule cannot be used more than once. For example, you cannot specify two prefix rules.
Builder for BucketS3KeyFilterArgs.
The destination information for the metadata table configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the `aws_s3_metadata`
namespace in the destination table bucket.
Builder for BucketS3TablesDestinationArgs.
Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see PutBucketEncryption. + General purpose buckets - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (`aws/s3`
) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS.
Specifies the default server-side encryption configuration. + General purpose buckets - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.
Builder for BucketServerSideEncryptionRuleArgs.
A container that describes additional filters for identifying the source objects that you want to replicate. You can choose to enable or disable the replication of these objects.
Builder for BucketSourceSelectionCriteriaArgs.
A container for filter information for the selection of S3 objects encrypted with AWS KMS.
Builder for BucketSseKmsEncryptedObjectsArgs.
Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.
Builder for BucketStorageClassAnalysisArgs.
Specifies tags to use to identify a subset of objects for an Amazon S3 bucket. For more information, see Categorizing your storage using tags in the Amazon Simple Storage Service User Guide.
Builder for BucketTagFilterArgs.
Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix.
Builder for BucketTargetObjectKeyFormatArgs.
The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without additional operational overhead.
Builder for BucketTieringArgs.
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.
Builder for BucketTopicConfigurationArgs.
Specifies when an object transitions to a specified storage class. For more information about Amazon S3 lifecycle configuration rules, see Transitioning Objects Using Amazon S3 Lifecycle in the Amazon S3 User Guide.
Builder for BucketTransitionArgs.
Describes the versioning state of an Amazon S3 bucket. For more information, see PUT Bucket versioning in the Amazon S3 API Reference. When you enable versioning on a bucket for the first time, it might take a short amount of time for the change to be fully propagated. We recommend that you wait for 15 minutes after enabling versioning before issuing write operations (`PUT`
or `DELETE`
) on objects in the bucket.
Builder for BucketVersioningConfigurationArgs.
Specifies website configuration parameters for an Amazon S3 bucket.
Builder for BucketWebsiteConfigurationArgs.
Builder for GetAccessGrantPlainArgs.
Builder for GetAccessGrantsInstancePlainArgs.
Builder for GetAccessGrantsLocationPlainArgs.
Builder for GetAccessPointPlainArgs.
Builder for GetBucketPlainArgs.
Builder for GetBucketPolicyPlainArgs.
Builder for GetMultiRegionAccessPointPlainArgs.
Builder for GetStorageLensGroupPlainArgs.
Builder for MultiRegionAccessPointRegionArgs.
Account-level metrics configurations.
Builder for StorageLensAccountLevelArgs.
Enables activity metrics.
Builder for StorageLensActivityMetricsArgs.
Enables advanced cost optimization metrics.
Enables advanced data protection metrics.
The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.
Builder for StorageLensAwsOrgArgs.
Bucket-level metrics configurations.
Builder for StorageLensBucketLevelArgs.
S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.
Builder for StorageLensBucketsAndRegionsArgs.
CloudWatch metrics settings for the Amazon S3 Storage Lens metrics export.
Builder for StorageLensCloudWatchMetricsArgs.
Specifies the details of Amazon S3 Storage Lens configuration.
Builder for StorageLensConfigurationArgs.
Specifies how Amazon S3 Storage Lens metrics should be exported.
Builder for StorageLensDataExportArgs.
Enables detailed status codes metrics.
Configures the server-side encryption for Amazon S3 Storage Lens report files with either S3-managed keys (SSE-S3) or KMS-managed keys (SSE-KMS).
Builder for StorageLensEncryptionArgs.
The Storage Lens group will include objects that match all of the specified filter values.
Builder for StorageLensGroupAndArgs.
Sets the Storage Lens Group filter.
Builder for StorageLensGroupFilterArgs.
Specifies the details of Amazon S3 Storage Lens Group configuration.
Builder for StorageLensGroupLevelArgs.
Filter to match all of the specified values for the minimum and maximum object age.
Builder for StorageLensGroupMatchObjectAgeArgs.
Filter to match all of the specified values for the minimum and maximum object size.
The Storage Lens group will include objects that match any of the specified filter values.
Builder for StorageLensGroupOrArgs.
Selection criteria for Storage Lens Group level metrics
Builder for StorageLensGroupTagArgs.
Prefix-level metrics configurations.
Builder for StorageLensPrefixLevelArgs.
S3 bucket destination settings for the Amazon S3 Storage Lens metrics export.
Builder for StorageLensS3BucketDestinationArgs.
Selection criteria for prefix-level metrics.
Builder for StorageLensSelectionCriteriaArgs.