Package-level declarations

Types

Link copied to clipboard
data class AccessGrantGranteeArgs(val granteeIdentifier: Output<String>, val granteeType: Output<AccessGrantGranteeGranteeType>) : ConvertibleToJava<AccessGrantGranteeArgs>
Link copied to clipboard
data class AccessGrantsLocationConfigurationArgs(val s3SubPrefix: Output<String>) : ConvertibleToJava<AccessGrantsLocationConfigurationArgs>
data class AccessPointPublicAccessBlockConfigurationArgs(val blockPublicAcls: Output<Boolean>? = null, val blockPublicPolicy: Output<Boolean>? = null, val ignorePublicAcls: Output<Boolean>? = null, val restrictPublicBuckets: Output<Boolean>? = null) : ConvertibleToJava<AccessPointPublicAccessBlockConfigurationArgs>
Link copied to clipboard
data class AccessPointVpcConfigurationArgs(val vpcId: Output<String>? = null) : ConvertibleToJava<AccessPointVpcConfigurationArgs>

The Virtual Private Cloud (VPC) configuration for a bucket access point.

Link copied to clipboard
data class BucketAbortIncompleteMultipartUploadArgs(val daysAfterInitiation: Output<Int>) : ConvertibleToJava<BucketAbortIncompleteMultipartUploadArgs>

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.

Link copied to clipboard
data class BucketAccelerateConfigurationArgs(val accelerationStatus: Output<BucketAccelerateConfigurationAccelerationStatus>) : ConvertibleToJava<BucketAccelerateConfigurationArgs>

Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see Amazon S3 Transfer Acceleration in the Amazon S3 User Guide.

Link copied to clipboard
data class BucketAccessControlTranslationArgs(val owner: Output<String>) : ConvertibleToJava<BucketAccessControlTranslationArgs>

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.

Link copied to clipboard
data class BucketAnalyticsConfigurationArgs(val id: Output<String>, val prefix: Output<String>? = null, val storageClassAnalysis: Output<BucketStorageClassAnalysisArgs>, val tagFilters: Output<List<BucketTagFilterArgs>>? = null) : ConvertibleToJava<BucketAnalyticsConfigurationArgs>

Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.

Link copied to clipboard
data class BucketCorsConfigurationArgs(val corsRules: Output<List<BucketCorsRuleArgs>>) : ConvertibleToJava<BucketCorsConfigurationArgs>

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.

Link copied to clipboard
data class BucketCorsRuleArgs(val allowedHeaders: Output<List<String>>? = null, val allowedMethods: Output<List<BucketCorsRuleAllowedMethodsItem>>, val allowedOrigins: Output<List<String>>, val exposedHeaders: Output<List<String>>? = null, val id: Output<String>? = null, val maxAge: Output<Int>? = null) : ConvertibleToJava<BucketCorsRuleArgs>

Specifies a cross-origin access rule for an Amazon S3 bucket.

Link copied to clipboard
Link copied to clipboard
data class BucketDataExportArgs(val destination: Output<BucketDestinationArgs>, val outputSchemaVersion: Output<String>) : ConvertibleToJava<BucketDataExportArgs>

Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.

Link copied to clipboard
data class BucketDefaultRetentionArgs(val days: Output<Int>? = null, val mode: Output<BucketDefaultRetentionMode>? = null, val years: Output<Int>? = null) : ConvertibleToJava<BucketDefaultRetentionArgs>

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.

Link copied to clipboard
data class BucketDeleteMarkerReplicationArgs(val status: Output<BucketDeleteMarkerReplicationStatus>? = null) : ConvertibleToJava<BucketDeleteMarkerReplicationArgs>

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.

Link copied to clipboard
data class BucketDestinationArgs(val bucketAccountId: Output<String>? = null, val bucketArn: Output<String>, val format: Output<BucketDestinationFormat>, val prefix: Output<String>? = null) : ConvertibleToJava<BucketDestinationArgs>

Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket.

Link copied to clipboard
data class BucketEncryptionArgs(val serverSideEncryptionConfiguration: Output<List<BucketServerSideEncryptionRuleArgs>>) : ConvertibleToJava<BucketEncryptionArgs>

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.

Link copied to clipboard
data class BucketEncryptionConfigurationArgs(val replicaKmsKeyId: Output<String>) : ConvertibleToJava<BucketEncryptionConfigurationArgs>

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.

Link copied to clipboard
data class BucketEventBridgeConfigurationArgs(val eventBridgeEnabled: Output<Boolean>) : ConvertibleToJava<BucketEventBridgeConfigurationArgs>

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

Link copied to clipboard
data class BucketFilterRuleArgs(val name: Output<String>, val value: Output<String>) : ConvertibleToJava<BucketFilterRuleArgs>

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.

data class BucketIntelligentTieringConfigurationArgs(val id: Output<String>, val prefix: Output<String>? = null, val status: Output<BucketIntelligentTieringConfigurationStatus>, val tagFilters: Output<List<BucketTagFilterArgs>>? = null, val tierings: Output<List<BucketTieringArgs>>) : ConvertibleToJava<BucketIntelligentTieringConfigurationArgs>

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.

Link copied to clipboard
data class BucketInventoryConfigurationArgs(val destination: Output<BucketDestinationArgs>, val enabled: Output<Boolean>, val id: Output<String>, val includedObjectVersions: Output<BucketInventoryConfigurationIncludedObjectVersions>, val optionalFields: Output<List<BucketInventoryConfigurationOptionalFieldsItem>>? = null, val prefix: Output<String>? = null, val scheduleFrequency: Output<BucketInventoryConfigurationScheduleFrequency>) : ConvertibleToJava<BucketInventoryConfigurationArgs>

Specifies the inventory configuration for an Amazon S3 bucket. For more information, see GET Bucket inventory in the Amazon S3 API Reference.

Link copied to clipboard
data class BucketLambdaConfigurationArgs(val event: Output<String>, val filter: Output<BucketNotificationFilterArgs>? = null, val function: Output<String>) : ConvertibleToJava<BucketLambdaConfigurationArgs>

Describes the LAMlong functions to invoke and the events for which to invoke them.

Link copied to clipboard
data class BucketLifecycleConfigurationArgs(val rules: Output<List<BucketRuleArgs>>) : ConvertibleToJava<BucketLifecycleConfigurationArgs>

Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see Object Lifecycle Management in the Amazon S3 User Guide.

Link copied to clipboard
data class BucketLoggingConfigurationArgs(val destinationBucketName: Output<String>? = null, val logFilePrefix: Output<String>? = null, val targetObjectKeyFormat: Output<BucketTargetObjectKeyFormatArgs>? = null) : ConvertibleToJava<BucketLoggingConfigurationArgs>

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.

Link copied to clipboard
data class BucketMetricsArgs(val eventThreshold: Output<BucketReplicationTimeValueArgs>? = null, val status: Output<BucketMetricsStatus>) : ConvertibleToJava<BucketMetricsArgs>

A container specifying replication metrics-related settings enabling replication metrics and events.

Link copied to clipboard
Link copied to clipboard
data class BucketMetricsConfigurationArgs(val accessPointArn: Output<String>? = null, val id: Output<String>, val prefix: Output<String>? = null, val tagFilters: Output<List<BucketTagFilterArgs>>? = null) : ConvertibleToJava<BucketMetricsConfigurationArgs>

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.

Link copied to clipboard
data class BucketNoncurrentVersionExpirationArgs(val newerNoncurrentVersions: Output<Int>? = null, val noncurrentDays: Output<Int>) : ConvertibleToJava<BucketNoncurrentVersionExpirationArgs>

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.

Link copied to clipboard
data class BucketNoncurrentVersionTransitionArgs(val newerNoncurrentVersions: Output<Int>? = null, val storageClass: Output<BucketNoncurrentVersionTransitionStorageClass>, val transitionInDays: Output<Int>) : ConvertibleToJava<BucketNoncurrentVersionTransitionArgs>

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.

Link copied to clipboard
data class BucketNotificationConfigurationArgs(val eventBridgeConfiguration: Output<BucketEventBridgeConfigurationArgs>? = null, val lambdaConfigurations: Output<List<BucketLambdaConfigurationArgs>>? = null, val queueConfigurations: Output<List<BucketQueueConfigurationArgs>>? = null, val topicConfigurations: Output<List<BucketTopicConfigurationArgs>>? = null) : ConvertibleToJava<BucketNotificationConfigurationArgs>

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.

Link copied to clipboard
data class BucketNotificationFilterArgs(val s3Key: Output<BucketS3KeyFilterArgs>) : ConvertibleToJava<BucketNotificationFilterArgs>

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.

Link copied to clipboard
data class BucketObjectLockConfigurationArgs(val objectLockEnabled: Output<String>? = null, val rule: Output<BucketObjectLockRuleArgs>? = null) : ConvertibleToJava<BucketObjectLockConfigurationArgs>

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.

Link copied to clipboard
data class BucketObjectLockRuleArgs(val defaultRetention: Output<BucketDefaultRetentionArgs>? = null) : ConvertibleToJava<BucketObjectLockRuleArgs>

Specifies the Object Lock rule for the specified object. Enable the this rule when you apply `ObjectLockConfiguration` to a bucket.

Link copied to clipboard
data class BucketOwnershipControlsArgs(val rules: Output<List<BucketOwnershipControlsRuleArgs>>) : ConvertibleToJava<BucketOwnershipControlsArgs>

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.

Link copied to clipboard
data class BucketOwnershipControlsRuleArgs(val objectOwnership: Output<BucketOwnershipControlsRuleObjectOwnership>? = null) : ConvertibleToJava<BucketOwnershipControlsRuleArgs>

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.

Link copied to clipboard
data class BucketPublicAccessBlockConfigurationArgs(val blockPublicAcls: Output<Boolean>? = null, val blockPublicPolicy: Output<Boolean>? = null, val ignorePublicAcls: Output<Boolean>? = null, val restrictPublicBuckets: Output<Boolean>? = null) : ConvertibleToJava<BucketPublicAccessBlockConfigurationArgs>

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.

Link copied to clipboard
data class BucketQueueConfigurationArgs(val event: Output<String>, val filter: Output<BucketNotificationFilterArgs>? = null, val queue: Output<String>) : ConvertibleToJava<BucketQueueConfigurationArgs>

Specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 detects specified events.

Link copied to clipboard
data class BucketRedirectAllRequestsToArgs(val hostName: Output<String>, val protocol: Output<BucketRedirectAllRequestsToProtocol>? = null) : ConvertibleToJava<BucketRedirectAllRequestsToArgs>

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.

Link copied to clipboard
data class BucketRedirectRuleArgs(val hostName: Output<String>? = null, val httpRedirectCode: Output<String>? = null, val protocol: Output<BucketRedirectRuleProtocol>? = null, val replaceKeyPrefixWith: Output<String>? = null, val replaceKeyWith: Output<String>? = null) : ConvertibleToJava<BucketRedirectRuleArgs>

Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.

Link copied to clipboard
data class BucketReplicaModificationsArgs(val status: Output<BucketReplicaModificationsStatus>) : ConvertibleToJava<BucketReplicaModificationsArgs>

A filter that you can specify for selection for modifications on replicas.

Link copied to clipboard
data class BucketReplicationConfigurationArgs(val role: Output<String>, val rules: Output<List<BucketReplicationRuleArgs>>) : ConvertibleToJava<BucketReplicationConfigurationArgs>

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.

Link copied to clipboard
data class BucketReplicationDestinationArgs(val accessControlTranslation: Output<BucketAccessControlTranslationArgs>? = null, val account: Output<String>? = null, val bucket: Output<String>, val encryptionConfiguration: Output<BucketEncryptionConfigurationArgs>? = null, val metrics: Output<BucketMetricsArgs>? = null, val replicationTime: Output<BucketReplicationTimeArgs>? = null, val storageClass: Output<BucketReplicationDestinationStorageClass>? = null) : ConvertibleToJava<BucketReplicationDestinationArgs>

A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).

Link copied to clipboard
data class BucketReplicationRuleAndOperatorArgs(val prefix: Output<String>? = null, val tagFilters: Output<List<BucketTagFilterArgs>>? = null) : ConvertibleToJava<BucketReplicationRuleAndOperatorArgs>

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:

Link copied to clipboard
data class BucketReplicationRuleArgs(val deleteMarkerReplication: Output<BucketDeleteMarkerReplicationArgs>? = null, val destination: Output<BucketReplicationDestinationArgs>, val filter: Output<BucketReplicationRuleFilterArgs>? = null, val id: Output<String>? = null, val prefix: Output<String>? = null, val priority: Output<Int>? = null, val sourceSelectionCriteria: Output<BucketSourceSelectionCriteriaArgs>? = null, val status: Output<BucketReplicationRuleStatus>) : ConvertibleToJava<BucketReplicationRuleArgs>

Specifies which Amazon S3 objects to replicate and where to store the replicas.

Link copied to clipboard
data class BucketReplicationRuleFilterArgs(val and: Output<BucketReplicationRuleAndOperatorArgs>? = null, val prefix: Output<String>? = null, val tagFilter: Output<BucketTagFilterArgs>? = null) : ConvertibleToJava<BucketReplicationRuleFilterArgs>

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.

Link copied to clipboard
data class BucketReplicationTimeArgs(val status: Output<BucketReplicationTimeStatus>, val time: Output<BucketReplicationTimeValueArgs>) : ConvertibleToJava<BucketReplicationTimeArgs>

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.

Link copied to clipboard
data class BucketReplicationTimeValueArgs(val minutes: Output<Int>) : ConvertibleToJava<BucketReplicationTimeValueArgs>

A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics `EventThreshold`.

Link copied to clipboard
data class BucketRoutingRuleArgs(val redirectRule: Output<BucketRedirectRuleArgs>, val routingRuleCondition: Output<BucketRoutingRuleConditionArgs>? = null) : ConvertibleToJava<BucketRoutingRuleArgs>

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.

Link copied to clipboard
data class BucketRoutingRuleConditionArgs(val httpErrorCodeReturnedEquals: Output<String>? = null, val keyPrefixEquals: Output<String>? = null) : ConvertibleToJava<BucketRoutingRuleConditionArgs>

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.

Link copied to clipboard
data class BucketRuleArgs(val abortIncompleteMultipartUpload: Output<BucketAbortIncompleteMultipartUploadArgs>? = null, val expirationDate: Output<String>? = null, val expirationInDays: Output<Int>? = null, val expiredObjectDeleteMarker: Output<Boolean>? = null, val id: Output<String>? = null, val noncurrentVersionExpiration: Output<BucketNoncurrentVersionExpirationArgs>? = null, val noncurrentVersionExpirationInDays: Output<Int>? = null, val noncurrentVersionTransition: Output<BucketNoncurrentVersionTransitionArgs>? = null, val noncurrentVersionTransitions: Output<List<BucketNoncurrentVersionTransitionArgs>>? = null, val objectSizeGreaterThan: Output<String>? = null, val objectSizeLessThan: Output<String>? = null, val prefix: Output<String>? = null, val status: Output<BucketRuleStatus>, val tagFilters: Output<List<BucketTagFilterArgs>>? = null, val transition: Output<BucketTransitionArgs>? = null, val transitions: Output<List<BucketTransitionArgs>>? = null) : ConvertibleToJava<BucketRuleArgs>

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`.

Link copied to clipboard
Link copied to clipboard
data class BucketS3KeyFilterArgs(val rules: Output<List<BucketFilterRuleArgs>>) : ConvertibleToJava<BucketS3KeyFilterArgs>

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.

Link copied to clipboard
data class BucketServerSideEncryptionByDefaultArgs(val kmsMasterKeyId: Output<String>? = null, val sseAlgorithm: Output<BucketServerSideEncryptionByDefaultSseAlgorithm>) : ConvertibleToJava<BucketServerSideEncryptionByDefaultArgs>

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. If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key 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. For more information, see PUT Bucket encryption in the Amazon S3 API Reference. 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.

Link copied to clipboard
data class BucketServerSideEncryptionRuleArgs(val bucketKeyEnabled: Output<Boolean>? = null, val serverSideEncryptionByDefault: Output<BucketServerSideEncryptionByDefaultArgs>? = null) : ConvertibleToJava<BucketServerSideEncryptionRuleArgs>

Specifies the default server-side encryption configuration. 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.

Link copied to clipboard
data class BucketSourceSelectionCriteriaArgs(val replicaModifications: Output<BucketReplicaModificationsArgs>? = null, val sseKmsEncryptedObjects: Output<BucketSseKmsEncryptedObjectsArgs>? = null) : ConvertibleToJava<BucketSourceSelectionCriteriaArgs>

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.

Link copied to clipboard
data class BucketSseKmsEncryptedObjectsArgs(val status: Output<BucketSseKmsEncryptedObjectsStatus>) : ConvertibleToJava<BucketSseKmsEncryptedObjectsArgs>

A container for filter information for the selection of S3 objects encrypted with AWS KMS.

Link copied to clipboard
data class BucketStorageClassAnalysisArgs(val dataExport: Output<BucketDataExportArgs>? = null) : ConvertibleToJava<BucketStorageClassAnalysisArgs>

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.

Link copied to clipboard
data class BucketTagFilterArgs(val key: Output<String>, val value: Output<String>) : ConvertibleToJava<BucketTagFilterArgs>

Specifies tags to use to identify a subset of objects for an Amazon S3 bucket.

Link copied to clipboard
class BucketTargetObjectKeyFormatArgs : ConvertibleToJava<BucketTargetObjectKeyFormatArgs>

Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix.

Link copied to clipboard
data class BucketTieringArgs(val accessTier: Output<BucketTieringAccessTier>, val days: Output<Int>) : ConvertibleToJava<BucketTieringArgs>

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.

Link copied to clipboard
Link copied to clipboard
data class BucketTopicConfigurationArgs(val event: Output<String>, val filter: Output<BucketNotificationFilterArgs>? = null, val topic: Output<String>) : ConvertibleToJava<BucketTopicConfigurationArgs>

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.

Link copied to clipboard
data class BucketTransitionArgs(val storageClass: Output<BucketTransitionStorageClass>, val transitionDate: Output<String>? = null, val transitionInDays: Output<Int>? = null) : ConvertibleToJava<BucketTransitionArgs>

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.

Link copied to clipboard
data class BucketVersioningConfigurationArgs(val status: Output<BucketVersioningConfigurationStatus>) : ConvertibleToJava<BucketVersioningConfigurationArgs>

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.

Link copied to clipboard
data class BucketWebsiteConfigurationArgs(val errorDocument: Output<String>? = null, val indexDocument: Output<String>? = null, val redirectAllRequestsTo: Output<BucketRedirectAllRequestsToArgs>? = null, val routingRules: Output<List<BucketRoutingRuleArgs>>? = null) : ConvertibleToJava<BucketWebsiteConfigurationArgs>

Specifies website configuration parameters for an Amazon S3 bucket.

Link copied to clipboard
data class GetAccessGrantPlainArgs(val accessGrantId: String) : ConvertibleToJava<GetAccessGrantPlainArgs>
Link copied to clipboard
data class GetAccessGrantsInstancePlainArgs(val accessGrantsInstanceArn: String) : ConvertibleToJava<GetAccessGrantsInstancePlainArgs>
Link copied to clipboard
data class GetAccessGrantsLocationPlainArgs(val accessGrantsLocationId: String) : ConvertibleToJava<GetAccessGrantsLocationPlainArgs>
Link copied to clipboard
data class GetAccessPointPlainArgs(val name: String) : ConvertibleToJava<GetAccessPointPlainArgs>
Link copied to clipboard
data class GetBucketPlainArgs(val bucketName: String) : ConvertibleToJava<GetBucketPlainArgs>
Link copied to clipboard
Link copied to clipboard
data class GetBucketPolicyPlainArgs(val bucket: String) : ConvertibleToJava<GetBucketPolicyPlainArgs>
Link copied to clipboard
data class GetMultiRegionAccessPointPlainArgs(val name: String) : ConvertibleToJava<GetMultiRegionAccessPointPlainArgs>
Link copied to clipboard
data class GetMultiRegionAccessPointPolicyPlainArgs(val mrapName: String) : ConvertibleToJava<GetMultiRegionAccessPointPolicyPlainArgs>
Link copied to clipboard
data class GetStorageLensGroupPlainArgs(val name: String) : ConvertibleToJava<GetStorageLensGroupPlainArgs>
data class MultiRegionAccessPointPublicAccessBlockConfigurationArgs(val blockPublicAcls: Output<Boolean>? = null, val blockPublicPolicy: Output<Boolean>? = null, val ignorePublicAcls: Output<Boolean>? = null, val restrictPublicBuckets: Output<Boolean>? = null) : ConvertibleToJava<MultiRegionAccessPointPublicAccessBlockConfigurationArgs>
Link copied to clipboard
data class MultiRegionAccessPointRegionArgs(val bucket: Output<String>, val bucketAccountId: Output<String>? = null) : ConvertibleToJava<MultiRegionAccessPointRegionArgs>
Link copied to clipboard
data class StorageLensAccountLevelArgs(val activityMetrics: Output<StorageLensActivityMetricsArgs>? = null, val advancedCostOptimizationMetrics: Output<StorageLensAdvancedCostOptimizationMetricsArgs>? = null, val advancedDataProtectionMetrics: Output<StorageLensAdvancedDataProtectionMetricsArgs>? = null, val bucketLevel: Output<StorageLensBucketLevelArgs>, val detailedStatusCodesMetrics: Output<StorageLensDetailedStatusCodesMetricsArgs>? = null, val storageLensGroupLevel: Output<StorageLensGroupLevelArgs>? = null) : ConvertibleToJava<StorageLensAccountLevelArgs>

Account-level metrics configurations.

Link copied to clipboard
data class StorageLensActivityMetricsArgs(val isEnabled: Output<Boolean>? = null) : ConvertibleToJava<StorageLensActivityMetricsArgs>

Enables activity metrics.

data class StorageLensAdvancedCostOptimizationMetricsArgs(val isEnabled: Output<Boolean>? = null) : ConvertibleToJava<StorageLensAdvancedCostOptimizationMetricsArgs>

Enables advanced cost optimization metrics.

data class StorageLensAdvancedDataProtectionMetricsArgs(val isEnabled: Output<Boolean>? = null) : ConvertibleToJava<StorageLensAdvancedDataProtectionMetricsArgs>

Enables advanced data protection metrics.

Link copied to clipboard
data class StorageLensAwsOrgArgs(val arn: Output<String>) : ConvertibleToJava<StorageLensAwsOrgArgs>

The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.

Link copied to clipboard
data class StorageLensBucketLevelArgs(val activityMetrics: Output<StorageLensActivityMetricsArgs>? = null, val advancedCostOptimizationMetrics: Output<StorageLensAdvancedCostOptimizationMetricsArgs>? = null, val advancedDataProtectionMetrics: Output<StorageLensAdvancedDataProtectionMetricsArgs>? = null, val detailedStatusCodesMetrics: Output<StorageLensDetailedStatusCodesMetricsArgs>? = null, val prefixLevel: Output<StorageLensPrefixLevelArgs>? = null) : ConvertibleToJava<StorageLensBucketLevelArgs>

Bucket-level metrics configurations.

Link copied to clipboard
data class StorageLensBucketsAndRegionsArgs(val buckets: Output<List<String>>? = null, val regions: Output<List<String>>? = null) : ConvertibleToJava<StorageLensBucketsAndRegionsArgs>

S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.

Link copied to clipboard
data class StorageLensCloudWatchMetricsArgs(val isEnabled: Output<Boolean>) : ConvertibleToJava<StorageLensCloudWatchMetricsArgs>

CloudWatch metrics settings for the Amazon S3 Storage Lens metrics export.

Link copied to clipboard
data class StorageLensConfigurationArgs(val accountLevel: Output<StorageLensAccountLevelArgs>, val awsOrg: Output<StorageLensAwsOrgArgs>? = null, val dataExport: Output<StorageLensDataExportArgs>? = null, val exclude: Output<StorageLensBucketsAndRegionsArgs>? = null, val id: Output<String>, val include: Output<StorageLensBucketsAndRegionsArgs>? = null, val isEnabled: Output<Boolean>, val storageLensArn: Output<String>? = null) : ConvertibleToJava<StorageLensConfigurationArgs>

Specifies the details of Amazon S3 Storage Lens configuration.

Link copied to clipboard
data class StorageLensDataExportArgs(val cloudWatchMetrics: Output<StorageLensCloudWatchMetricsArgs>? = null, val s3BucketDestination: Output<StorageLensS3BucketDestinationArgs>? = null) : ConvertibleToJava<StorageLensDataExportArgs>

Specifies how Amazon S3 Storage Lens metrics should be exported.

data class StorageLensDetailedStatusCodesMetricsArgs(val isEnabled: Output<Boolean>? = null) : ConvertibleToJava<StorageLensDetailedStatusCodesMetricsArgs>

Enables detailed status codes metrics.

Link copied to clipboard
class StorageLensEncryptionArgs : ConvertibleToJava<StorageLensEncryptionArgs>

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).

Link copied to clipboard
data class StorageLensGroupAndArgs(val matchAnyPrefix: Output<List<String>>? = null, val matchAnySuffix: Output<List<String>>? = null, val matchAnyTag: Output<List<StorageLensGroupTagArgs>>? = null, val matchObjectAge: Output<StorageLensGroupMatchObjectAgeArgs>? = null, val matchObjectSize: Output<StorageLensGroupMatchObjectSizeArgs>? = null) : ConvertibleToJava<StorageLensGroupAndArgs>

The Storage Lens group will include objects that match all of the specified filter values.

Link copied to clipboard
data class StorageLensGroupFilterArgs(val and: Output<StorageLensGroupAndArgs>? = null, val matchAnyPrefix: Output<List<String>>? = null, val matchAnySuffix: Output<List<String>>? = null, val matchAnyTag: Output<List<StorageLensGroupTagArgs>>? = null, val matchObjectAge: Output<StorageLensGroupMatchObjectAgeArgs>? = null, val matchObjectSize: Output<StorageLensGroupMatchObjectSizeArgs>? = null, val or: Output<StorageLensGroupOrArgs>? = null) : ConvertibleToJava<StorageLensGroupFilterArgs>

Sets the Storage Lens Group filter.

Link copied to clipboard
data class StorageLensGroupLevelArgs(val storageLensGroupSelectionCriteria: Output<StorageLensGroupSelectionCriteriaArgs>? = null) : ConvertibleToJava<StorageLensGroupLevelArgs>

Specifies the details of Amazon S3 Storage Lens Group configuration.

Link copied to clipboard
data class StorageLensGroupMatchObjectAgeArgs(val daysGreaterThan: Output<Int>? = null, val daysLessThan: Output<Int>? = null) : ConvertibleToJava<StorageLensGroupMatchObjectAgeArgs>

Filter to match all of the specified values for the minimum and maximum object age.

Link copied to clipboard
data class StorageLensGroupMatchObjectSizeArgs(val bytesGreaterThan: Output<Int>? = null, val bytesLessThan: Output<Int>? = null) : ConvertibleToJava<StorageLensGroupMatchObjectSizeArgs>

Filter to match all of the specified values for the minimum and maximum object size.

Link copied to clipboard
data class StorageLensGroupOrArgs(val matchAnyPrefix: Output<List<String>>? = null, val matchAnySuffix: Output<List<String>>? = null, val matchAnyTag: Output<List<StorageLensGroupTagArgs>>? = null, val matchObjectAge: Output<StorageLensGroupMatchObjectAgeArgs>? = null, val matchObjectSize: Output<StorageLensGroupMatchObjectSizeArgs>? = null) : ConvertibleToJava<StorageLensGroupOrArgs>

The Storage Lens group will include objects that match any of the specified filter values.

Link copied to clipboard
data class StorageLensGroupSelectionCriteriaArgs(val exclude: Output<List<String>>? = null, val include: Output<List<String>>? = null) : ConvertibleToJava<StorageLensGroupSelectionCriteriaArgs>

Selection criteria for Storage Lens Group level metrics

Link copied to clipboard
data class StorageLensGroupTagArgs(val key: Output<String>, val value: Output<String>) : ConvertibleToJava<StorageLensGroupTagArgs>
Link copied to clipboard
data class StorageLensPrefixLevelArgs(val storageMetrics: Output<StorageLensPrefixLevelStorageMetricsArgs>) : ConvertibleToJava<StorageLensPrefixLevelArgs>

Prefix-level metrics configurations.

Link copied to clipboard
data class StorageLensPrefixLevelStorageMetricsArgs(val isEnabled: Output<Boolean>? = null, val selectionCriteria: Output<StorageLensSelectionCriteriaArgs>? = null) : ConvertibleToJava<StorageLensPrefixLevelStorageMetricsArgs>
Link copied to clipboard
data class StorageLensS3BucketDestinationArgs(val accountId: Output<String>, val arn: Output<String>, val encryption: Output<StorageLensEncryptionArgs>? = null, val format: Output<StorageLensS3BucketDestinationFormat>, val outputSchemaVersion: Output<StorageLensS3BucketDestinationOutputSchemaVersion>, val prefix: Output<String>? = null) : ConvertibleToJava<StorageLensS3BucketDestinationArgs>

S3 bucket destination settings for the Amazon S3 Storage Lens metrics export.

Link copied to clipboard
data class StorageLensSelectionCriteriaArgs(val delimiter: Output<String>? = null, val maxDepth: Output<Int>? = null, val minStorageBytesPercentage: Output<Double>? = null) : ConvertibleToJava<StorageLensSelectionCriteriaArgs>

Selection criteria for prefix-level metrics.