1. Packages
  2. AWS Classic
  3. API Docs
  4. s3
  5. Bucket

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.47.0 published on Friday, Jul 26, 2024 by Pulumi

aws.s3.Bucket

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.47.0 published on Friday, Jul 26, 2024 by Pulumi

    Provides a S3 bucket resource.

    This resource provides functionality for managing S3 general purpose buckets in an AWS Partition. To manage Amazon S3 Express directory buckets, use the aws_directory_bucket resource. To manage S3 on Outposts, use the aws.s3control.Bucket resource.

    Object Lock can be enabled by using the object_lock_enable attribute or by using the aws.s3.BucketObjectLockConfigurationV2 resource. Please note, that by using the resource, Object Lock can be enabled/disabled without destroying and recreating the bucket.

    Example Usage

    Private Bucket With Tags

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.s3.BucketV2("example", {
        bucket: "my-tf-test-bucket",
        tags: {
            Name: "My bucket",
            Environment: "Dev",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.s3.BucketV2("example",
        bucket="my-tf-test-bucket",
        tags={
            "Name": "My bucket",
            "Environment": "Dev",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := s3.NewBucketV2(ctx, "example", &s3.BucketV2Args{
    			Bucket: pulumi.String("my-tf-test-bucket"),
    			Tags: pulumi.StringMap{
    				"Name":        pulumi.String("My bucket"),
    				"Environment": pulumi.String("Dev"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.S3.BucketV2("example", new()
        {
            Bucket = "my-tf-test-bucket",
            Tags = 
            {
                { "Name", "My bucket" },
                { "Environment", "Dev" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.s3.BucketV2;
    import com.pulumi.aws.s3.BucketV2Args;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new BucketV2("example", BucketV2Args.builder()
                .bucket("my-tf-test-bucket")
                .tags(Map.ofEntries(
                    Map.entry("Name", "My bucket"),
                    Map.entry("Environment", "Dev")
                ))
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:s3:BucketV2
        properties:
          bucket: my-tf-test-bucket
          tags:
            Name: My bucket
            Environment: Dev
    

    Create Bucket Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Bucket(name: string, args?: BucketArgs, opts?: CustomResourceOptions);
    @overload
    def Bucket(resource_name: str,
               args: Optional[BucketArgs] = None,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Bucket(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               acceleration_status: Optional[str] = None,
               acl: Optional[Union[str, CannedAcl]] = None,
               arn: Optional[str] = None,
               bucket: Optional[str] = None,
               bucket_prefix: Optional[str] = None,
               cors_rules: Optional[Sequence[BucketCorsRuleArgs]] = None,
               force_destroy: Optional[bool] = None,
               grants: Optional[Sequence[BucketGrantArgs]] = None,
               hosted_zone_id: Optional[str] = None,
               lifecycle_rules: Optional[Sequence[BucketLifecycleRuleArgs]] = None,
               loggings: Optional[Sequence[BucketLoggingArgs]] = None,
               object_lock_configuration: Optional[BucketObjectLockConfigurationArgs] = None,
               policy: Optional[str] = None,
               replication_configuration: Optional[BucketReplicationConfigurationArgs] = None,
               request_payer: Optional[str] = None,
               server_side_encryption_configuration: Optional[BucketServerSideEncryptionConfigurationArgs] = None,
               tags: Optional[Mapping[str, str]] = None,
               versioning: Optional[BucketVersioningArgs] = None,
               website: Optional[BucketWebsiteArgs] = None,
               website_domain: Optional[str] = None,
               website_endpoint: Optional[str] = None)
    func NewBucket(ctx *Context, name string, args *BucketArgs, opts ...ResourceOption) (*Bucket, error)
    public Bucket(string name, BucketArgs? args = null, CustomResourceOptions? opts = null)
    public Bucket(String name, BucketArgs args)
    public Bucket(String name, BucketArgs args, CustomResourceOptions options)
    
    type: aws:s3:Bucket
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var awsBucketResource = new Aws.S3.Bucket("awsBucketResource", new()
    {
        AccelerationStatus = "string",
        Acl = "string",
        Arn = "string",
        BucketName = "string",
        BucketPrefix = "string",
        CorsRules = new[]
        {
            new Aws.S3.Inputs.BucketCorsRuleArgs
            {
                AllowedMethods = new[]
                {
                    "string",
                },
                AllowedOrigins = new[]
                {
                    "string",
                },
                AllowedHeaders = new[]
                {
                    "string",
                },
                ExposeHeaders = new[]
                {
                    "string",
                },
                MaxAgeSeconds = 0,
            },
        },
        ForceDestroy = false,
        Grants = new[]
        {
            new Aws.S3.Inputs.BucketGrantArgs
            {
                Permissions = new[]
                {
                    "string",
                },
                Type = "string",
                Id = "string",
                Uri = "string",
            },
        },
        HostedZoneId = "string",
        LifecycleRules = new[]
        {
            new Aws.S3.Inputs.BucketLifecycleRuleArgs
            {
                Enabled = false,
                AbortIncompleteMultipartUploadDays = 0,
                Expiration = new Aws.S3.Inputs.BucketLifecycleRuleExpirationArgs
                {
                    Date = "string",
                    Days = 0,
                    ExpiredObjectDeleteMarker = false,
                },
                Id = "string",
                NoncurrentVersionExpiration = new Aws.S3.Inputs.BucketLifecycleRuleNoncurrentVersionExpirationArgs
                {
                    Days = 0,
                },
                NoncurrentVersionTransitions = new[]
                {
                    new Aws.S3.Inputs.BucketLifecycleRuleNoncurrentVersionTransitionArgs
                    {
                        StorageClass = "string",
                        Days = 0,
                    },
                },
                Prefix = "string",
                Tags = 
                {
                    { "string", "string" },
                },
                Transitions = new[]
                {
                    new Aws.S3.Inputs.BucketLifecycleRuleTransitionArgs
                    {
                        StorageClass = "string",
                        Date = "string",
                        Days = 0,
                    },
                },
            },
        },
        Loggings = new[]
        {
            new Aws.S3.Inputs.BucketLoggingArgs
            {
                TargetBucket = "string",
                TargetPrefix = "string",
            },
        },
        ObjectLockConfiguration = new Aws.S3.Inputs.BucketObjectLockConfigurationArgs
        {
            ObjectLockEnabled = "string",
            Rule = new Aws.S3.Inputs.BucketObjectLockConfigurationRuleArgs
            {
                DefaultRetention = new Aws.S3.Inputs.BucketObjectLockConfigurationRuleDefaultRetentionArgs
                {
                    Mode = "string",
                    Days = 0,
                    Years = 0,
                },
            },
        },
        Policy = "string",
        ReplicationConfiguration = new Aws.S3.Inputs.BucketReplicationConfigurationArgs
        {
            Role = "string",
            Rules = new[]
            {
                new Aws.S3.Inputs.BucketReplicationConfigurationRuleArgs
                {
                    Destination = new Aws.S3.Inputs.BucketReplicationConfigurationRuleDestinationArgs
                    {
                        Bucket = "string",
                        AccessControlTranslation = new Aws.S3.Inputs.BucketReplicationConfigurationRuleDestinationAccessControlTranslationArgs
                        {
                            Owner = "string",
                        },
                        AccountId = "string",
                        Metrics = new Aws.S3.Inputs.BucketReplicationConfigurationRuleDestinationMetricsArgs
                        {
                            Minutes = 0,
                            Status = "string",
                        },
                        ReplicaKmsKeyId = "string",
                        ReplicationTime = new Aws.S3.Inputs.BucketReplicationConfigurationRuleDestinationReplicationTimeArgs
                        {
                            Minutes = 0,
                            Status = "string",
                        },
                        StorageClass = "string",
                    },
                    Status = "string",
                    DeleteMarkerReplicationStatus = "string",
                    Filter = new Aws.S3.Inputs.BucketReplicationConfigurationRuleFilterArgs
                    {
                        Prefix = "string",
                        Tags = 
                        {
                            { "string", "string" },
                        },
                    },
                    Id = "string",
                    Prefix = "string",
                    Priority = 0,
                    SourceSelectionCriteria = new Aws.S3.Inputs.BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs
                    {
                        SseKmsEncryptedObjects = new Aws.S3.Inputs.BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsArgs
                        {
                            Enabled = false,
                        },
                    },
                },
            },
        },
        RequestPayer = "string",
        ServerSideEncryptionConfiguration = new Aws.S3.Inputs.BucketServerSideEncryptionConfigurationArgs
        {
            Rule = new Aws.S3.Inputs.BucketServerSideEncryptionConfigurationRuleArgs
            {
                ApplyServerSideEncryptionByDefault = new Aws.S3.Inputs.BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultArgs
                {
                    SseAlgorithm = "string",
                    KmsMasterKeyId = "string",
                },
                BucketKeyEnabled = false,
            },
        },
        Tags = 
        {
            { "string", "string" },
        },
        Versioning = new Aws.S3.Inputs.BucketVersioningArgs
        {
            Enabled = false,
            MfaDelete = false,
        },
        Website = new Aws.S3.Inputs.BucketWebsiteArgs
        {
            ErrorDocument = "string",
            IndexDocument = "string",
            RedirectAllRequestsTo = "string",
            RoutingRules = "string",
        },
        WebsiteDomain = "string",
        WebsiteEndpoint = "string",
    });
    
    example, err := s3.NewBucket(ctx, "awsBucketResource", &s3.BucketArgs{
    	AccelerationStatus: pulumi.String("string"),
    	Acl:                pulumi.String("string"),
    	Arn:                pulumi.String("string"),
    	Bucket:             pulumi.String("string"),
    	BucketPrefix:       pulumi.String("string"),
    	CorsRules: s3.BucketCorsRuleArray{
    		&s3.BucketCorsRuleArgs{
    			AllowedMethods: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AllowedOrigins: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			AllowedHeaders: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			ExposeHeaders: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			MaxAgeSeconds: pulumi.Int(0),
    		},
    	},
    	ForceDestroy: pulumi.Bool(false),
    	Grants: s3.BucketGrantArray{
    		&s3.BucketGrantArgs{
    			Permissions: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Type: pulumi.String("string"),
    			Id:   pulumi.String("string"),
    			Uri:  pulumi.String("string"),
    		},
    	},
    	HostedZoneId: pulumi.String("string"),
    	LifecycleRules: s3.BucketLifecycleRuleArray{
    		&s3.BucketLifecycleRuleArgs{
    			Enabled:                            pulumi.Bool(false),
    			AbortIncompleteMultipartUploadDays: pulumi.Int(0),
    			Expiration: &s3.BucketLifecycleRuleExpirationArgs{
    				Date:                      pulumi.String("string"),
    				Days:                      pulumi.Int(0),
    				ExpiredObjectDeleteMarker: pulumi.Bool(false),
    			},
    			Id: pulumi.String("string"),
    			NoncurrentVersionExpiration: &s3.BucketLifecycleRuleNoncurrentVersionExpirationArgs{
    				Days: pulumi.Int(0),
    			},
    			NoncurrentVersionTransitions: s3.BucketLifecycleRuleNoncurrentVersionTransitionArray{
    				&s3.BucketLifecycleRuleNoncurrentVersionTransitionArgs{
    					StorageClass: pulumi.String("string"),
    					Days:         pulumi.Int(0),
    				},
    			},
    			Prefix: pulumi.String("string"),
    			Tags: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Transitions: s3.BucketLifecycleRuleTransitionArray{
    				&s3.BucketLifecycleRuleTransitionArgs{
    					StorageClass: pulumi.String("string"),
    					Date:         pulumi.String("string"),
    					Days:         pulumi.Int(0),
    				},
    			},
    		},
    	},
    	Loggings: s3.BucketLoggingArray{
    		&s3.BucketLoggingArgs{
    			TargetBucket: pulumi.String("string"),
    			TargetPrefix: pulumi.String("string"),
    		},
    	},
    	ObjectLockConfiguration: &s3.BucketObjectLockConfigurationArgs{
    		ObjectLockEnabled: pulumi.String("string"),
    		Rule: &s3.BucketObjectLockConfigurationRuleArgs{
    			DefaultRetention: &s3.BucketObjectLockConfigurationRuleDefaultRetentionArgs{
    				Mode:  pulumi.String("string"),
    				Days:  pulumi.Int(0),
    				Years: pulumi.Int(0),
    			},
    		},
    	},
    	Policy: pulumi.Any("string"),
    	ReplicationConfiguration: &s3.BucketReplicationConfigurationArgs{
    		Role: pulumi.String("string"),
    		Rules: s3.BucketReplicationConfigurationRuleArray{
    			&s3.BucketReplicationConfigurationRuleArgs{
    				Destination: &s3.BucketReplicationConfigurationRuleDestinationArgs{
    					Bucket: pulumi.String("string"),
    					AccessControlTranslation: &s3.BucketReplicationConfigurationRuleDestinationAccessControlTranslationArgs{
    						Owner: pulumi.String("string"),
    					},
    					AccountId: pulumi.String("string"),
    					Metrics: &s3.BucketReplicationConfigurationRuleDestinationMetricsArgs{
    						Minutes: pulumi.Int(0),
    						Status:  pulumi.String("string"),
    					},
    					ReplicaKmsKeyId: pulumi.String("string"),
    					ReplicationTime: &s3.BucketReplicationConfigurationRuleDestinationReplicationTimeArgs{
    						Minutes: pulumi.Int(0),
    						Status:  pulumi.String("string"),
    					},
    					StorageClass: pulumi.String("string"),
    				},
    				Status:                        pulumi.String("string"),
    				DeleteMarkerReplicationStatus: pulumi.String("string"),
    				Filter: &s3.BucketReplicationConfigurationRuleFilterArgs{
    					Prefix: pulumi.String("string"),
    					Tags: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    				},
    				Id:       pulumi.String("string"),
    				Prefix:   pulumi.String("string"),
    				Priority: pulumi.Int(0),
    				SourceSelectionCriteria: &s3.BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs{
    					SseKmsEncryptedObjects: &s3.BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsArgs{
    						Enabled: pulumi.Bool(false),
    					},
    				},
    			},
    		},
    	},
    	RequestPayer: pulumi.String("string"),
    	ServerSideEncryptionConfiguration: &s3.BucketServerSideEncryptionConfigurationArgs{
    		Rule: &s3.BucketServerSideEncryptionConfigurationRuleArgs{
    			ApplyServerSideEncryptionByDefault: &s3.BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultArgs{
    				SseAlgorithm:   pulumi.String("string"),
    				KmsMasterKeyId: pulumi.String("string"),
    			},
    			BucketKeyEnabled: pulumi.Bool(false),
    		},
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Versioning: &s3.BucketVersioningArgs{
    		Enabled:   pulumi.Bool(false),
    		MfaDelete: pulumi.Bool(false),
    	},
    	Website: &s3.BucketWebsiteArgs{
    		ErrorDocument:         pulumi.String("string"),
    		IndexDocument:         pulumi.String("string"),
    		RedirectAllRequestsTo: pulumi.String("string"),
    		RoutingRules:          pulumi.Any("string"),
    	},
    	WebsiteDomain:   pulumi.String("string"),
    	WebsiteEndpoint: pulumi.String("string"),
    })
    
    var awsBucketResource = new Bucket("awsBucketResource", BucketArgs.builder()
        .accelerationStatus("string")
        .acl("string")
        .arn("string")
        .bucket("string")
        .bucketPrefix("string")
        .corsRules(BucketCorsRuleArgs.builder()
            .allowedMethods("string")
            .allowedOrigins("string")
            .allowedHeaders("string")
            .exposeHeaders("string")
            .maxAgeSeconds(0)
            .build())
        .forceDestroy(false)
        .grants(BucketGrantArgs.builder()
            .permissions("string")
            .type("string")
            .id("string")
            .uri("string")
            .build())
        .hostedZoneId("string")
        .lifecycleRules(BucketLifecycleRuleArgs.builder()
            .enabled(false)
            .abortIncompleteMultipartUploadDays(0)
            .expiration(BucketLifecycleRuleExpirationArgs.builder()
                .date("string")
                .days(0)
                .expiredObjectDeleteMarker(false)
                .build())
            .id("string")
            .noncurrentVersionExpiration(BucketLifecycleRuleNoncurrentVersionExpirationArgs.builder()
                .days(0)
                .build())
            .noncurrentVersionTransitions(BucketLifecycleRuleNoncurrentVersionTransitionArgs.builder()
                .storageClass("string")
                .days(0)
                .build())
            .prefix("string")
            .tags(Map.of("string", "string"))
            .transitions(BucketLifecycleRuleTransitionArgs.builder()
                .storageClass("string")
                .date("string")
                .days(0)
                .build())
            .build())
        .loggings(BucketLoggingArgs.builder()
            .targetBucket("string")
            .targetPrefix("string")
            .build())
        .objectLockConfiguration(BucketObjectLockConfigurationArgs.builder()
            .objectLockEnabled("string")
            .rule(BucketObjectLockConfigurationRuleArgs.builder()
                .defaultRetention(BucketObjectLockConfigurationRuleDefaultRetentionArgs.builder()
                    .mode("string")
                    .days(0)
                    .years(0)
                    .build())
                .build())
            .build())
        .policy("string")
        .replicationConfiguration(BucketReplicationConfigurationArgs.builder()
            .role("string")
            .rules(BucketReplicationConfigurationRuleArgs.builder()
                .destination(BucketReplicationConfigurationRuleDestinationArgs.builder()
                    .bucket("string")
                    .accessControlTranslation(BucketReplicationConfigurationRuleDestinationAccessControlTranslationArgs.builder()
                        .owner("string")
                        .build())
                    .accountId("string")
                    .metrics(BucketReplicationConfigurationRuleDestinationMetricsArgs.builder()
                        .minutes(0)
                        .status("string")
                        .build())
                    .replicaKmsKeyId("string")
                    .replicationTime(BucketReplicationConfigurationRuleDestinationReplicationTimeArgs.builder()
                        .minutes(0)
                        .status("string")
                        .build())
                    .storageClass("string")
                    .build())
                .status("string")
                .deleteMarkerReplicationStatus("string")
                .filter(BucketReplicationConfigurationRuleFilterArgs.builder()
                    .prefix("string")
                    .tags(Map.of("string", "string"))
                    .build())
                .id("string")
                .prefix("string")
                .priority(0)
                .sourceSelectionCriteria(BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs.builder()
                    .sseKmsEncryptedObjects(BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsArgs.builder()
                        .enabled(false)
                        .build())
                    .build())
                .build())
            .build())
        .requestPayer("string")
        .serverSideEncryptionConfiguration(BucketServerSideEncryptionConfigurationArgs.builder()
            .rule(BucketServerSideEncryptionConfigurationRuleArgs.builder()
                .applyServerSideEncryptionByDefault(BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultArgs.builder()
                    .sseAlgorithm("string")
                    .kmsMasterKeyId("string")
                    .build())
                .bucketKeyEnabled(false)
                .build())
            .build())
        .tags(Map.of("string", "string"))
        .versioning(BucketVersioningArgs.builder()
            .enabled(false)
            .mfaDelete(false)
            .build())
        .website(BucketWebsiteArgs.builder()
            .errorDocument("string")
            .indexDocument("string")
            .redirectAllRequestsTo("string")
            .routingRules("string")
            .build())
        .websiteDomain("string")
        .websiteEndpoint("string")
        .build());
    
    aws_bucket_resource = aws.s3.Bucket("awsBucketResource",
        acceleration_status="string",
        acl="string",
        arn="string",
        bucket="string",
        bucket_prefix="string",
        cors_rules=[{
            "allowedMethods": ["string"],
            "allowedOrigins": ["string"],
            "allowedHeaders": ["string"],
            "exposeHeaders": ["string"],
            "maxAgeSeconds": 0,
        }],
        force_destroy=False,
        grants=[{
            "permissions": ["string"],
            "type": "string",
            "id": "string",
            "uri": "string",
        }],
        hosted_zone_id="string",
        lifecycle_rules=[{
            "enabled": False,
            "abortIncompleteMultipartUploadDays": 0,
            "expiration": {
                "date": "string",
                "days": 0,
                "expiredObjectDeleteMarker": False,
            },
            "id": "string",
            "noncurrentVersionExpiration": {
                "days": 0,
            },
            "noncurrentVersionTransitions": [{
                "storageClass": "string",
                "days": 0,
            }],
            "prefix": "string",
            "tags": {
                "string": "string",
            },
            "transitions": [{
                "storageClass": "string",
                "date": "string",
                "days": 0,
            }],
        }],
        loggings=[{
            "targetBucket": "string",
            "targetPrefix": "string",
        }],
        object_lock_configuration={
            "objectLockEnabled": "string",
            "rule": {
                "defaultRetention": {
                    "mode": "string",
                    "days": 0,
                    "years": 0,
                },
            },
        },
        policy="string",
        replication_configuration={
            "role": "string",
            "rules": [{
                "destination": {
                    "bucket": "string",
                    "accessControlTranslation": {
                        "owner": "string",
                    },
                    "accountId": "string",
                    "metrics": {
                        "minutes": 0,
                        "status": "string",
                    },
                    "replicaKmsKeyId": "string",
                    "replicationTime": {
                        "minutes": 0,
                        "status": "string",
                    },
                    "storageClass": "string",
                },
                "status": "string",
                "deleteMarkerReplicationStatus": "string",
                "filter": {
                    "prefix": "string",
                    "tags": {
                        "string": "string",
                    },
                },
                "id": "string",
                "prefix": "string",
                "priority": 0,
                "sourceSelectionCriteria": {
                    "sseKmsEncryptedObjects": {
                        "enabled": False,
                    },
                },
            }],
        },
        request_payer="string",
        server_side_encryption_configuration={
            "rule": {
                "applyServerSideEncryptionByDefault": {
                    "sseAlgorithm": "string",
                    "kmsMasterKeyId": "string",
                },
                "bucketKeyEnabled": False,
            },
        },
        tags={
            "string": "string",
        },
        versioning={
            "enabled": False,
            "mfaDelete": False,
        },
        website={
            "errorDocument": "string",
            "indexDocument": "string",
            "redirectAllRequestsTo": "string",
            "routingRules": "string",
        },
        website_domain="string",
        website_endpoint="string")
    
    const awsBucketResource = new aws.s3.Bucket("awsBucketResource", {
        accelerationStatus: "string",
        acl: "string",
        arn: "string",
        bucket: "string",
        bucketPrefix: "string",
        corsRules: [{
            allowedMethods: ["string"],
            allowedOrigins: ["string"],
            allowedHeaders: ["string"],
            exposeHeaders: ["string"],
            maxAgeSeconds: 0,
        }],
        forceDestroy: false,
        grants: [{
            permissions: ["string"],
            type: "string",
            id: "string",
            uri: "string",
        }],
        hostedZoneId: "string",
        lifecycleRules: [{
            enabled: false,
            abortIncompleteMultipartUploadDays: 0,
            expiration: {
                date: "string",
                days: 0,
                expiredObjectDeleteMarker: false,
            },
            id: "string",
            noncurrentVersionExpiration: {
                days: 0,
            },
            noncurrentVersionTransitions: [{
                storageClass: "string",
                days: 0,
            }],
            prefix: "string",
            tags: {
                string: "string",
            },
            transitions: [{
                storageClass: "string",
                date: "string",
                days: 0,
            }],
        }],
        loggings: [{
            targetBucket: "string",
            targetPrefix: "string",
        }],
        objectLockConfiguration: {
            objectLockEnabled: "string",
            rule: {
                defaultRetention: {
                    mode: "string",
                    days: 0,
                    years: 0,
                },
            },
        },
        policy: "string",
        replicationConfiguration: {
            role: "string",
            rules: [{
                destination: {
                    bucket: "string",
                    accessControlTranslation: {
                        owner: "string",
                    },
                    accountId: "string",
                    metrics: {
                        minutes: 0,
                        status: "string",
                    },
                    replicaKmsKeyId: "string",
                    replicationTime: {
                        minutes: 0,
                        status: "string",
                    },
                    storageClass: "string",
                },
                status: "string",
                deleteMarkerReplicationStatus: "string",
                filter: {
                    prefix: "string",
                    tags: {
                        string: "string",
                    },
                },
                id: "string",
                prefix: "string",
                priority: 0,
                sourceSelectionCriteria: {
                    sseKmsEncryptedObjects: {
                        enabled: false,
                    },
                },
            }],
        },
        requestPayer: "string",
        serverSideEncryptionConfiguration: {
            rule: {
                applyServerSideEncryptionByDefault: {
                    sseAlgorithm: "string",
                    kmsMasterKeyId: "string",
                },
                bucketKeyEnabled: false,
            },
        },
        tags: {
            string: "string",
        },
        versioning: {
            enabled: false,
            mfaDelete: false,
        },
        website: {
            errorDocument: "string",
            indexDocument: "string",
            redirectAllRequestsTo: "string",
            routingRules: "string",
        },
        websiteDomain: "string",
        websiteEndpoint: "string",
    });
    
    type: aws:s3:Bucket
    properties:
        accelerationStatus: string
        acl: string
        arn: string
        bucket: string
        bucketPrefix: string
        corsRules:
            - allowedHeaders:
                - string
              allowedMethods:
                - string
              allowedOrigins:
                - string
              exposeHeaders:
                - string
              maxAgeSeconds: 0
        forceDestroy: false
        grants:
            - id: string
              permissions:
                - string
              type: string
              uri: string
        hostedZoneId: string
        lifecycleRules:
            - abortIncompleteMultipartUploadDays: 0
              enabled: false
              expiration:
                date: string
                days: 0
                expiredObjectDeleteMarker: false
              id: string
              noncurrentVersionExpiration:
                days: 0
              noncurrentVersionTransitions:
                - days: 0
                  storageClass: string
              prefix: string
              tags:
                string: string
              transitions:
                - date: string
                  days: 0
                  storageClass: string
        loggings:
            - targetBucket: string
              targetPrefix: string
        objectLockConfiguration:
            objectLockEnabled: string
            rule:
                defaultRetention:
                    days: 0
                    mode: string
                    years: 0
        policy: string
        replicationConfiguration:
            role: string
            rules:
                - deleteMarkerReplicationStatus: string
                  destination:
                    accessControlTranslation:
                        owner: string
                    accountId: string
                    bucket: string
                    metrics:
                        minutes: 0
                        status: string
                    replicaKmsKeyId: string
                    replicationTime:
                        minutes: 0
                        status: string
                    storageClass: string
                  filter:
                    prefix: string
                    tags:
                        string: string
                  id: string
                  prefix: string
                  priority: 0
                  sourceSelectionCriteria:
                    sseKmsEncryptedObjects:
                        enabled: false
                  status: string
        requestPayer: string
        serverSideEncryptionConfiguration:
            rule:
                applyServerSideEncryptionByDefault:
                    kmsMasterKeyId: string
                    sseAlgorithm: string
                bucketKeyEnabled: false
        tags:
            string: string
        versioning:
            enabled: false
            mfaDelete: false
        website:
            errorDocument: string
            indexDocument: string
            redirectAllRequestsTo: string
            routingRules: string
        websiteDomain: string
        websiteEndpoint: string
    

    Bucket Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Bucket resource accepts the following input properties:

    AccelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    Acl string | Pulumi.Aws.S3.CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    Arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    BucketName string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    BucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    CorsRules List<BucketCorsRule>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    ForceDestroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    Grants List<BucketGrant>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    HostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    LifecycleRules List<BucketLifecycleRule>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    Loggings List<BucketLogging>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    ObjectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    Policy string | string
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    ReplicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    RequestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    ServerSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    Tags Dictionary<string, string>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    Versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    Website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    AccelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    Acl string | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    Arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    Bucket string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    BucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    CorsRules []BucketCorsRuleArgs
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    ForceDestroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    Grants []BucketGrantArgs
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    HostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    LifecycleRules []BucketLifecycleRuleArgs
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    Loggings []BucketLoggingArgs
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    ObjectLockConfiguration BucketObjectLockConfigurationArgs
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    Policy string | string
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    ReplicationConfiguration BucketReplicationConfigurationArgs
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    RequestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    ServerSideEncryptionConfiguration BucketServerSideEncryptionConfigurationArgs
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    Tags map[string]string

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    Versioning BucketVersioningArgs
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    Website BucketWebsiteArgs
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus String
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl String | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn String
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket String
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketPrefix String
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    corsRules List<BucketCorsRule>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy Boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants List<BucketGrant>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId String
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules List<BucketLifecycleRule>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings List<BucketLogging>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy String | String
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    replicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer String
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Map<String,String>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain String
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint String
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl string | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    corsRules BucketCorsRule[]
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants BucketGrant[]
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules BucketLifecycleRule[]
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings BucketLogging[]
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy string | PolicyDocument
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    replicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags {[key: string]: string}

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    acceleration_status str
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl str | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn str
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket str
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucket_prefix str
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    cors_rules Sequence[BucketCorsRuleArgs]
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    force_destroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants Sequence[BucketGrantArgs]
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hosted_zone_id str
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycle_rules Sequence[BucketLifecycleRuleArgs]
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings Sequence[BucketLoggingArgs]
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    object_lock_configuration BucketObjectLockConfigurationArgs
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy str | str
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    replication_configuration BucketReplicationConfigurationArgs
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    request_payer str
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    server_side_encryption_configuration BucketServerSideEncryptionConfigurationArgs
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Mapping[str, str]

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    versioning BucketVersioningArgs
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsiteArgs
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    website_domain str
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    website_endpoint str
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus String
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl String | "private" | "public-read" | "public-read-write" | "aws-exec-read" | "authenticated-read" | "bucket-owner-read" | "bucket-owner-full-control" | "log-delivery-write"
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn String
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket String
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketPrefix String
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    corsRules List<Property Map>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy Boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants List<Property Map>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId String
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules List<Property Map>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings List<Property Map>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration Property Map
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy String |
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    replicationConfiguration Property Map
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer String
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration Property Map
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Map<String>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    versioning Property Map
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website Property Map
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain String
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint String
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Bucket resource produces the following output properties:

    BucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    BucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    Id string
    The provider-assigned unique ID for this managed resource.
    Region string
    AWS region this bucket resides in.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    BucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    BucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    Id string
    The provider-assigned unique ID for this managed resource.
    Region string
    AWS region this bucket resides in.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    bucketDomainName String
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketRegionalDomainName String
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    id String
    The provider-assigned unique ID for this managed resource.
    region String
    AWS region this bucket resides in.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    bucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    id string
    The provider-assigned unique ID for this managed resource.
    region string
    AWS region this bucket resides in.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    bucket_domain_name str
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucket_regional_domain_name str
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    id str
    The provider-assigned unique ID for this managed resource.
    region str
    AWS region this bucket resides in.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    bucketDomainName String
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketRegionalDomainName String
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    id String
    The provider-assigned unique ID for this managed resource.
    region String
    AWS region this bucket resides in.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up Existing Bucket Resource

    Get an existing Bucket resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: BucketState, opts?: CustomResourceOptions): Bucket
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            acceleration_status: Optional[str] = None,
            acl: Optional[Union[str, CannedAcl]] = None,
            arn: Optional[str] = None,
            bucket: Optional[str] = None,
            bucket_domain_name: Optional[str] = None,
            bucket_prefix: Optional[str] = None,
            bucket_regional_domain_name: Optional[str] = None,
            cors_rules: Optional[Sequence[BucketCorsRuleArgs]] = None,
            force_destroy: Optional[bool] = None,
            grants: Optional[Sequence[BucketGrantArgs]] = None,
            hosted_zone_id: Optional[str] = None,
            lifecycle_rules: Optional[Sequence[BucketLifecycleRuleArgs]] = None,
            loggings: Optional[Sequence[BucketLoggingArgs]] = None,
            object_lock_configuration: Optional[BucketObjectLockConfigurationArgs] = None,
            policy: Optional[str] = None,
            region: Optional[str] = None,
            replication_configuration: Optional[BucketReplicationConfigurationArgs] = None,
            request_payer: Optional[str] = None,
            server_side_encryption_configuration: Optional[BucketServerSideEncryptionConfigurationArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None,
            versioning: Optional[BucketVersioningArgs] = None,
            website: Optional[BucketWebsiteArgs] = None,
            website_domain: Optional[str] = None,
            website_endpoint: Optional[str] = None) -> Bucket
    func GetBucket(ctx *Context, name string, id IDInput, state *BucketState, opts ...ResourceOption) (*Bucket, error)
    public static Bucket Get(string name, Input<string> id, BucketState? state, CustomResourceOptions? opts = null)
    public static Bucket get(String name, Output<String> id, BucketState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AccelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    Acl string | Pulumi.Aws.S3.CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    Arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    BucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    BucketName string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    BucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    BucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    CorsRules List<BucketCorsRule>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    ForceDestroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    Grants List<BucketGrant>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    HostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    LifecycleRules List<BucketLifecycleRule>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    Loggings List<BucketLogging>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    ObjectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    Policy string | string
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    Region string
    AWS region this bucket resides in.
    ReplicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    RequestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    ServerSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    Tags Dictionary<string, string>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    Website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    AccelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    Acl string | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    Arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    Bucket string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    BucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    BucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    BucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    CorsRules []BucketCorsRuleArgs
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    ForceDestroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    Grants []BucketGrantArgs
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    HostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    LifecycleRules []BucketLifecycleRuleArgs
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    Loggings []BucketLoggingArgs
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    ObjectLockConfiguration BucketObjectLockConfigurationArgs
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    Policy string | string
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    Region string
    AWS region this bucket resides in.
    ReplicationConfiguration BucketReplicationConfigurationArgs
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    RequestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    ServerSideEncryptionConfiguration BucketServerSideEncryptionConfigurationArgs
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    Tags map[string]string

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Versioning BucketVersioningArgs
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    Website BucketWebsiteArgs
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    WebsiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus String
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl String | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn String
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket String
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketDomainName String
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketPrefix String
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    bucketRegionalDomainName String
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    corsRules List<BucketCorsRule>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy Boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants List<BucketGrant>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId String
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules List<BucketLifecycleRule>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings List<BucketLogging>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy String | String
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    region String
    AWS region this bucket resides in.
    replicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer String
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Map<String,String>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain String
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint String
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus string
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl string | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn string
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket string
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketDomainName string
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketPrefix string
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    bucketRegionalDomainName string
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    corsRules BucketCorsRule[]
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants BucketGrant[]
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId string
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules BucketLifecycleRule[]
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings BucketLogging[]
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration BucketObjectLockConfiguration
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy string | PolicyDocument
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    region string
    AWS region this bucket resides in.
    replicationConfiguration BucketReplicationConfiguration
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer string
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration BucketServerSideEncryptionConfiguration
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags {[key: string]: string}

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    versioning BucketVersioning
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsite
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain string
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint string
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    acceleration_status str
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl str | CannedAcl
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn str
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket str
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucket_domain_name str
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucket_prefix str
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    bucket_regional_domain_name str
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    cors_rules Sequence[BucketCorsRuleArgs]
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    force_destroy bool
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants Sequence[BucketGrantArgs]
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hosted_zone_id str
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycle_rules Sequence[BucketLifecycleRuleArgs]
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings Sequence[BucketLoggingArgs]
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    object_lock_configuration BucketObjectLockConfigurationArgs
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy str | str
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    region str
    AWS region this bucket resides in.
    replication_configuration BucketReplicationConfigurationArgs
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    request_payer str
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    server_side_encryption_configuration BucketServerSideEncryptionConfigurationArgs
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Mapping[str, str]

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    versioning BucketVersioningArgs
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website BucketWebsiteArgs
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    website_domain str
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    website_endpoint str
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    accelerationStatus String
    Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended. Cannot be used in cn-north-1 or us-gov-west-1. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAccelerateConfigurationV2 instead.
    acl String | "private" | "public-read" | "public-read-write" | "aws-exec-read" | "authenticated-read" | "bucket-owner-read" | "bucket-owner-full-control" | "log-delivery-write"
    The canned ACL to apply. Valid values are private, public-read, public-read-write, aws-exec-read, authenticated-read, and log-delivery-write. Defaults to private. Conflicts with grant. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    arn String
    ARN of the bucket. Will be of format arn:aws:s3:::bucketname.
    bucket String
    Name of the bucket. If omitted, the provider will assign a random, unique name. Must be lowercase and less than or equal to 63 characters in length. A full list of bucket naming rules may be found here. The name must not be in the format [bucket_name]--[azid]--x-s3. Use the aws.s3.DirectoryBucket resource to manage S3 Express buckets.
    bucketDomainName String
    Bucket domain name. Will be of format bucketname.s3.amazonaws.com.
    bucketPrefix String
    Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket. Must be lowercase and less than or equal to 37 characters in length. A full list of bucket naming rules may be found here.
    bucketRegionalDomainName String
    The bucket region-specific domain name. The bucket domain name including the region name. Please refer to the S3 endpoints reference for format. Note: AWS CloudFront allows specifying an S3 region-specific endpoint when creating an S3 origin. This will prevent redirect issues from CloudFront to the S3 Origin URL. For more information, see the Virtual Hosted-Style Requests for Other Regions section in the AWS S3 User Guide.
    corsRules List<Property Map>
    Rule of Cross-Origin Resource Sharing. See CORS rule below for details. This provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketCorsConfigurationV2 instead.
    forceDestroy Boolean
    Boolean that indicates all objects (including any locked objects) should be deleted from the bucket when the bucket is destroyed so that the bucket can be destroyed without error. These objects are not recoverable. This only deletes objects when the bucket is destroyed, not when setting this parameter to true. Once this parameter is set to true, there must be a successful pulumi up run before a destroy is required to update this value in the resource state. Without a successful pulumi up after this parameter is set, this flag will have no effect. If setting this field in the same operation that would require replacing the bucket or destroying the bucket, this flag will not work. Additionally when importing a bucket, a successful pulumi up is required to set this value in state before it will take effect on a destroy operation.
    grants List<Property Map>
    An ACL policy grant. See Grant below for details. Conflicts with acl. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketAclV2 instead.
    hostedZoneId String
    Route 53 Hosted Zone ID for this bucket's region.
    lifecycleRules List<Property Map>
    Configuration of object lifecycle management. See Lifecycle Rule below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLifecycleConfigurationV2 instead.
    loggings List<Property Map>
    Configuration of S3 bucket logging parameters. See Logging below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketLoggingV2 instead.
    objectLockConfiguration Property Map
    Configuration of S3 object locking. See Object Lock Configuration below for details. The provider wil only perform drift detection if a configuration value is provided. Use the object_lock_enabled parameter and the resource aws.s3.BucketObjectLockConfigurationV2 instead.
    policy String |
    Valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), this provider may view the policy as constantly changing. In this case, please make sure you use the verbose/specific version of the policy. For more information about building AWS IAM policy documents with this provider, see the AWS IAM Policy Document Guide. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketPolicy instead.
    region String
    AWS region this bucket resides in.
    replicationConfiguration Property Map
    Configuration of replication configuration. See Replication Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketReplicationConfig instead.
    requestPayer String
    Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketRequestPaymentConfigurationV2 instead.
    serverSideEncryptionConfiguration Property Map
    Configuration of server-side encryption configuration. See Server Side Encryption Configuration below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketServerSideEncryptionConfigurationV2 instead.
    tags Map<String>

    Map of tags to assign to the bucket. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    The following arguments are deprecated, and will be removed in a future major version:

    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    versioning Property Map
    Configuration of the S3 bucket versioning state. See Versioning below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketVersioningV2 instead.
    website Property Map
    Configuration of the S3 bucket website. See Website below for details. The provider will only perform drift detection if a configuration value is provided. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteDomain String
    (Deprecated) Domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.
    websiteEndpoint String
    (Deprecated) Website endpoint, if the bucket is configured with a website. If not, this will be an empty string. Use the resource aws.s3.BucketWebsiteConfigurationV2 instead.

    Supporting Types

    BucketCorsRule, BucketCorsRuleArgs

    AllowedMethods List<string>
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    AllowedOrigins List<string>
    One or more origins you want customers to be able to access the bucket from.
    AllowedHeaders List<string>
    List of headers allowed.
    ExposeHeaders List<string>
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    MaxAgeSeconds int
    Specifies time in seconds that browser can cache the response for a preflight request.
    AllowedMethods []string
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    AllowedOrigins []string
    One or more origins you want customers to be able to access the bucket from.
    AllowedHeaders []string
    List of headers allowed.
    ExposeHeaders []string
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    MaxAgeSeconds int
    Specifies time in seconds that browser can cache the response for a preflight request.
    allowedMethods List<String>
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    allowedOrigins List<String>
    One or more origins you want customers to be able to access the bucket from.
    allowedHeaders List<String>
    List of headers allowed.
    exposeHeaders List<String>
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    maxAgeSeconds Integer
    Specifies time in seconds that browser can cache the response for a preflight request.
    allowedMethods string[]
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    allowedOrigins string[]
    One or more origins you want customers to be able to access the bucket from.
    allowedHeaders string[]
    List of headers allowed.
    exposeHeaders string[]
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    maxAgeSeconds number
    Specifies time in seconds that browser can cache the response for a preflight request.
    allowed_methods Sequence[str]
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    allowed_origins Sequence[str]
    One or more origins you want customers to be able to access the bucket from.
    allowed_headers Sequence[str]
    List of headers allowed.
    expose_headers Sequence[str]
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    max_age_seconds int
    Specifies time in seconds that browser can cache the response for a preflight request.
    allowedMethods List<String>
    One or more HTTP methods that you allow the origin to execute. Can be GET, PUT, POST, DELETE or HEAD.
    allowedOrigins List<String>
    One or more origins you want customers to be able to access the bucket from.
    allowedHeaders List<String>
    List of headers allowed.
    exposeHeaders List<String>
    One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
    maxAgeSeconds Number
    Specifies time in seconds that browser can cache the response for a preflight request.

    BucketGrant, BucketGrantArgs

    Permissions List<string>
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    Type string
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    Id string
    Canonical user id to grant for. Used only when type is CanonicalUser.
    Uri string
    Uri address to grant for. Used only when type is Group.
    Permissions []string
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    Type string
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    Id string
    Canonical user id to grant for. Used only when type is CanonicalUser.
    Uri string
    Uri address to grant for. Used only when type is Group.
    permissions List<String>
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    type String
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    id String
    Canonical user id to grant for. Used only when type is CanonicalUser.
    uri String
    Uri address to grant for. Used only when type is Group.
    permissions string[]
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    type string
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    id string
    Canonical user id to grant for. Used only when type is CanonicalUser.
    uri string
    Uri address to grant for. Used only when type is Group.
    permissions Sequence[str]
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    type str
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    id str
    Canonical user id to grant for. Used only when type is CanonicalUser.
    uri str
    Uri address to grant for. Used only when type is Group.
    permissions List<String>
    List of permissions to apply for grantee. Valid values are READ, WRITE, READ_ACP, WRITE_ACP, FULL_CONTROL.
    type String
    Type of grantee to apply for. Valid values are CanonicalUser and Group. AmazonCustomerByEmail is not supported.
    id String
    Canonical user id to grant for. Used only when type is CanonicalUser.
    uri String
    Uri address to grant for. Used only when type is Group.

    BucketLifecycleRule, BucketLifecycleRuleArgs

    Enabled bool
    Specifies lifecycle rule status.
    AbortIncompleteMultipartUploadDays int
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    Expiration BucketLifecycleRuleExpiration
    Specifies a period in the object's expire. See Expiration below for details.
    Id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    NoncurrentVersionExpiration BucketLifecycleRuleNoncurrentVersionExpiration
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    NoncurrentVersionTransitions List<BucketLifecycleRuleNoncurrentVersionTransition>
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    Prefix string
    Object key prefix identifying one or more objects to which the rule applies.
    Tags Dictionary<string, string>
    Specifies object tags key and value.
    Transitions List<BucketLifecycleRuleTransition>
    Specifies a period in the object's transitions. See Transition below for details.
    Enabled bool
    Specifies lifecycle rule status.
    AbortIncompleteMultipartUploadDays int
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    Expiration BucketLifecycleRuleExpiration
    Specifies a period in the object's expire. See Expiration below for details.
    Id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    NoncurrentVersionExpiration BucketLifecycleRuleNoncurrentVersionExpiration
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    NoncurrentVersionTransitions []BucketLifecycleRuleNoncurrentVersionTransition
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    Prefix string
    Object key prefix identifying one or more objects to which the rule applies.
    Tags map[string]string
    Specifies object tags key and value.
    Transitions []BucketLifecycleRuleTransition
    Specifies a period in the object's transitions. See Transition below for details.
    enabled Boolean
    Specifies lifecycle rule status.
    abortIncompleteMultipartUploadDays Integer
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    expiration BucketLifecycleRuleExpiration
    Specifies a period in the object's expire. See Expiration below for details.
    id String
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    noncurrentVersionExpiration BucketLifecycleRuleNoncurrentVersionExpiration
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    noncurrentVersionTransitions List<BucketLifecycleRuleNoncurrentVersionTransition>
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    prefix String
    Object key prefix identifying one or more objects to which the rule applies.
    tags Map<String,String>
    Specifies object tags key and value.
    transitions List<BucketLifecycleRuleTransition>
    Specifies a period in the object's transitions. See Transition below for details.
    enabled boolean
    Specifies lifecycle rule status.
    abortIncompleteMultipartUploadDays number
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    expiration BucketLifecycleRuleExpiration
    Specifies a period in the object's expire. See Expiration below for details.
    id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    noncurrentVersionExpiration BucketLifecycleRuleNoncurrentVersionExpiration
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    noncurrentVersionTransitions BucketLifecycleRuleNoncurrentVersionTransition[]
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    prefix string
    Object key prefix identifying one or more objects to which the rule applies.
    tags {[key: string]: string}
    Specifies object tags key and value.
    transitions BucketLifecycleRuleTransition[]
    Specifies a period in the object's transitions. See Transition below for details.
    enabled bool
    Specifies lifecycle rule status.
    abort_incomplete_multipart_upload_days int
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    expiration BucketLifecycleRuleExpiration
    Specifies a period in the object's expire. See Expiration below for details.
    id str
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    noncurrent_version_expiration BucketLifecycleRuleNoncurrentVersionExpiration
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    noncurrent_version_transitions Sequence[BucketLifecycleRuleNoncurrentVersionTransition]
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    prefix str
    Object key prefix identifying one or more objects to which the rule applies.
    tags Mapping[str, str]
    Specifies object tags key and value.
    transitions Sequence[BucketLifecycleRuleTransition]
    Specifies a period in the object's transitions. See Transition below for details.
    enabled Boolean
    Specifies lifecycle rule status.
    abortIncompleteMultipartUploadDays Number
    Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
    expiration Property Map
    Specifies a period in the object's expire. See Expiration below for details.
    id String
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    noncurrentVersionExpiration Property Map
    Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
    noncurrentVersionTransitions List<Property Map>
    Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
    prefix String
    Object key prefix identifying one or more objects to which the rule applies.
    tags Map<String>
    Specifies object tags key and value.
    transitions List<Property Map>
    Specifies a period in the object's transitions. See Transition below for details.

    BucketLifecycleRuleExpiration, BucketLifecycleRuleExpirationArgs

    Date string
    Specifies the date after which you want the corresponding action to take effect.
    Days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    ExpiredObjectDeleteMarker bool
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
    Date string
    Specifies the date after which you want the corresponding action to take effect.
    Days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    ExpiredObjectDeleteMarker bool
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
    date String
    Specifies the date after which you want the corresponding action to take effect.
    days Integer
    Specifies the number of days after object creation when the specific rule action takes effect.
    expiredObjectDeleteMarker Boolean
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
    date string
    Specifies the date after which you want the corresponding action to take effect.
    days number
    Specifies the number of days after object creation when the specific rule action takes effect.
    expiredObjectDeleteMarker boolean
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
    date str
    Specifies the date after which you want the corresponding action to take effect.
    days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    expired_object_delete_marker bool
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
    date String
    Specifies the date after which you want the corresponding action to take effect.
    days Number
    Specifies the number of days after object creation when the specific rule action takes effect.
    expiredObjectDeleteMarker Boolean
    On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.

    BucketLifecycleRuleNoncurrentVersionExpiration, BucketLifecycleRuleNoncurrentVersionExpirationArgs

    Days int
    Specifies the number of days noncurrent object versions expire.
    Days int
    Specifies the number of days noncurrent object versions expire.
    days Integer
    Specifies the number of days noncurrent object versions expire.
    days number
    Specifies the number of days noncurrent object versions expire.
    days int
    Specifies the number of days noncurrent object versions expire.
    days Number
    Specifies the number of days noncurrent object versions expire.

    BucketLifecycleRuleNoncurrentVersionTransition, BucketLifecycleRuleNoncurrentVersionTransitionArgs

    StorageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    Days int
    Specifies the number of days noncurrent object versions transition.
    StorageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    Days int
    Specifies the number of days noncurrent object versions transition.
    storageClass String
    Specifies the Amazon S3 storage class to which you want the object to transition.
    days Integer
    Specifies the number of days noncurrent object versions transition.
    storageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    days number
    Specifies the number of days noncurrent object versions transition.
    storage_class str
    Specifies the Amazon S3 storage class to which you want the object to transition.
    days int
    Specifies the number of days noncurrent object versions transition.
    storageClass String
    Specifies the Amazon S3 storage class to which you want the object to transition.
    days Number
    Specifies the number of days noncurrent object versions transition.

    BucketLifecycleRuleTransition, BucketLifecycleRuleTransitionArgs

    StorageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    Date string
    Specifies the date after which you want the corresponding action to take effect.
    Days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    StorageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    Date string
    Specifies the date after which you want the corresponding action to take effect.
    Days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    storageClass String
    Specifies the Amazon S3 storage class to which you want the object to transition.
    date String
    Specifies the date after which you want the corresponding action to take effect.
    days Integer
    Specifies the number of days after object creation when the specific rule action takes effect.
    storageClass string
    Specifies the Amazon S3 storage class to which you want the object to transition.
    date string
    Specifies the date after which you want the corresponding action to take effect.
    days number
    Specifies the number of days after object creation when the specific rule action takes effect.
    storage_class str
    Specifies the Amazon S3 storage class to which you want the object to transition.
    date str
    Specifies the date after which you want the corresponding action to take effect.
    days int
    Specifies the number of days after object creation when the specific rule action takes effect.
    storageClass String
    Specifies the Amazon S3 storage class to which you want the object to transition.
    date String
    Specifies the date after which you want the corresponding action to take effect.
    days Number
    Specifies the number of days after object creation when the specific rule action takes effect.

    BucketLogging, BucketLoggingArgs

    TargetBucket string
    Name of the bucket that will receive the log objects.
    TargetPrefix string
    To specify a key prefix for log objects.
    TargetBucket string
    Name of the bucket that will receive the log objects.
    TargetPrefix string
    To specify a key prefix for log objects.
    targetBucket String
    Name of the bucket that will receive the log objects.
    targetPrefix String
    To specify a key prefix for log objects.
    targetBucket string
    Name of the bucket that will receive the log objects.
    targetPrefix string
    To specify a key prefix for log objects.
    target_bucket str
    Name of the bucket that will receive the log objects.
    target_prefix str
    To specify a key prefix for log objects.
    targetBucket String
    Name of the bucket that will receive the log objects.
    targetPrefix String
    To specify a key prefix for log objects.

    BucketObjectLockConfiguration, BucketObjectLockConfigurationArgs

    ObjectLockEnabled string
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    Rule BucketObjectLockConfigurationRule
    Object Lock rule in place for this bucket (documented below).
    ObjectLockEnabled string
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    Rule BucketObjectLockConfigurationRule
    Object Lock rule in place for this bucket (documented below).
    objectLockEnabled String
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    rule BucketObjectLockConfigurationRule
    Object Lock rule in place for this bucket (documented below).
    objectLockEnabled string
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    rule BucketObjectLockConfigurationRule
    Object Lock rule in place for this bucket (documented below).
    object_lock_enabled str
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    rule BucketObjectLockConfigurationRule
    Object Lock rule in place for this bucket (documented below).
    objectLockEnabled String
    Indicates whether this bucket has an Object Lock configuration enabled. Valid values are true or false. This argument is not supported in all regions or partitions.
    rule Property Map
    Object Lock rule in place for this bucket (documented below).

    BucketObjectLockConfigurationRule, BucketObjectLockConfigurationRuleArgs

    DefaultRetention BucketObjectLockConfigurationRuleDefaultRetention
    Default retention period that you want to apply to new objects placed in this bucket (documented below).
    DefaultRetention BucketObjectLockConfigurationRuleDefaultRetention
    Default retention period that you want to apply to new objects placed in this bucket (documented below).
    defaultRetention BucketObjectLockConfigurationRuleDefaultRetention
    Default retention period that you want to apply to new objects placed in this bucket (documented below).
    defaultRetention BucketObjectLockConfigurationRuleDefaultRetention
    Default retention period that you want to apply to new objects placed in this bucket (documented below).
    default_retention BucketObjectLockConfigurationRuleDefaultRetention
    Default retention period that you want to apply to new objects placed in this bucket (documented below).
    defaultRetention Property Map
    Default retention period that you want to apply to new objects placed in this bucket (documented below).

    BucketObjectLockConfigurationRuleDefaultRetention, BucketObjectLockConfigurationRuleDefaultRetentionArgs

    Mode string
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    Days int
    Number of days that you want to specify for the default retention period.
    Years int
    Number of years that you want to specify for the default retention period.
    Mode string
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    Days int
    Number of days that you want to specify for the default retention period.
    Years int
    Number of years that you want to specify for the default retention period.
    mode String
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    days Integer
    Number of days that you want to specify for the default retention period.
    years Integer
    Number of years that you want to specify for the default retention period.
    mode string
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    days number
    Number of days that you want to specify for the default retention period.
    years number
    Number of years that you want to specify for the default retention period.
    mode str
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    days int
    Number of days that you want to specify for the default retention period.
    years int
    Number of years that you want to specify for the default retention period.
    mode String
    Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are GOVERNANCE and COMPLIANCE.
    days Number
    Number of days that you want to specify for the default retention period.
    years Number
    Number of years that you want to specify for the default retention period.

    BucketReplicationConfiguration, BucketReplicationConfigurationArgs

    Role string
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    Rules List<BucketReplicationConfigurationRule>
    Specifies the rules managing the replication (documented below).
    Role string
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    Rules []BucketReplicationConfigurationRule
    Specifies the rules managing the replication (documented below).
    role String
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    rules List<BucketReplicationConfigurationRule>
    Specifies the rules managing the replication (documented below).
    role string
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    rules BucketReplicationConfigurationRule[]
    Specifies the rules managing the replication (documented below).
    role str
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    rules Sequence[BucketReplicationConfigurationRule]
    Specifies the rules managing the replication (documented below).
    role String
    ARN of the IAM role for Amazon S3 to assume when replicating the objects.
    rules List<Property Map>
    Specifies the rules managing the replication (documented below).

    BucketReplicationConfigurationRule, BucketReplicationConfigurationRuleArgs

    Destination BucketReplicationConfigurationRuleDestination
    Specifies the destination for the rule (documented below).
    Status string
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    DeleteMarkerReplicationStatus string
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    Filter BucketReplicationConfigurationRuleFilter
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    Id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    Prefix string
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    Priority int
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    SourceSelectionCriteria BucketReplicationConfigurationRuleSourceSelectionCriteria
    Specifies special object selection criteria (documented below).
    Destination BucketReplicationConfigurationRuleDestination
    Specifies the destination for the rule (documented below).
    Status string
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    DeleteMarkerReplicationStatus string
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    Filter BucketReplicationConfigurationRuleFilter
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    Id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    Prefix string
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    Priority int
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    SourceSelectionCriteria BucketReplicationConfigurationRuleSourceSelectionCriteria
    Specifies special object selection criteria (documented below).
    destination BucketReplicationConfigurationRuleDestination
    Specifies the destination for the rule (documented below).
    status String
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    deleteMarkerReplicationStatus String
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    filter BucketReplicationConfigurationRuleFilter
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    id String
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    prefix String
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    priority Integer
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    sourceSelectionCriteria BucketReplicationConfigurationRuleSourceSelectionCriteria
    Specifies special object selection criteria (documented below).
    destination BucketReplicationConfigurationRuleDestination
    Specifies the destination for the rule (documented below).
    status string
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    deleteMarkerReplicationStatus string
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    filter BucketReplicationConfigurationRuleFilter
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    id string
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    prefix string
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    priority number
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    sourceSelectionCriteria BucketReplicationConfigurationRuleSourceSelectionCriteria
    Specifies special object selection criteria (documented below).
    destination BucketReplicationConfigurationRuleDestination
    Specifies the destination for the rule (documented below).
    status str
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    delete_marker_replication_status str
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    filter BucketReplicationConfigurationRuleFilter
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    id str
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    prefix str
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    priority int
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    source_selection_criteria BucketReplicationConfigurationRuleSourceSelectionCriteria
    Specifies special object selection criteria (documented below).
    destination Property Map
    Specifies the destination for the rule (documented below).
    status String
    Status of the rule. Either Enabled or Disabled. The rule is ignored if status is not Enabled.
    deleteMarkerReplicationStatus String
    Whether delete markers are replicated. The only valid value is Enabled. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when filter is used).
    filter Property Map
    Filter that identifies subset of objects to which the replication rule applies (documented below).
    id String
    Unique identifier for the rule. Must be less than or equal to 255 characters in length.
    prefix String
    Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    priority Number
    Priority associated with the rule. Priority should only be set if filter is configured. If not provided, defaults to 0. Priority must be unique between multiple rules.
    sourceSelectionCriteria Property Map
    Specifies special object selection criteria (documented below).

    BucketReplicationConfigurationRuleDestination, BucketReplicationConfigurationRuleDestinationArgs

    Bucket string
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    AccessControlTranslation BucketReplicationConfigurationRuleDestinationAccessControlTranslation
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    AccountId string
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    Metrics BucketReplicationConfigurationRuleDestinationMetrics
    Enables replication metrics (required for S3 RTC) (documented below).
    ReplicaKmsKeyId string
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    ReplicationTime BucketReplicationConfigurationRuleDestinationReplicationTime
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    StorageClass string
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
    Bucket string
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    AccessControlTranslation BucketReplicationConfigurationRuleDestinationAccessControlTranslation
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    AccountId string
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    Metrics BucketReplicationConfigurationRuleDestinationMetrics
    Enables replication metrics (required for S3 RTC) (documented below).
    ReplicaKmsKeyId string
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    ReplicationTime BucketReplicationConfigurationRuleDestinationReplicationTime
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    StorageClass string
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
    bucket String
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    accessControlTranslation BucketReplicationConfigurationRuleDestinationAccessControlTranslation
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    accountId String
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    metrics BucketReplicationConfigurationRuleDestinationMetrics
    Enables replication metrics (required for S3 RTC) (documented below).
    replicaKmsKeyId String
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    replicationTime BucketReplicationConfigurationRuleDestinationReplicationTime
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    storageClass String
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
    bucket string
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    accessControlTranslation BucketReplicationConfigurationRuleDestinationAccessControlTranslation
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    accountId string
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    metrics BucketReplicationConfigurationRuleDestinationMetrics
    Enables replication metrics (required for S3 RTC) (documented below).
    replicaKmsKeyId string
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    replicationTime BucketReplicationConfigurationRuleDestinationReplicationTime
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    storageClass string
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
    bucket str
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    access_control_translation BucketReplicationConfigurationRuleDestinationAccessControlTranslation
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    account_id str
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    metrics BucketReplicationConfigurationRuleDestinationMetrics
    Enables replication metrics (required for S3 RTC) (documented below).
    replica_kms_key_id str
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    replication_time BucketReplicationConfigurationRuleDestinationReplicationTime
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    storage_class str
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
    bucket String
    ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
    accessControlTranslation Property Map
    Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with account_id owner override configuration.
    accountId String
    Account ID to use for overriding the object owner on replication. Must be used in conjunction with access_control_translation override configuration.
    metrics Property Map
    Enables replication metrics (required for S3 RTC) (documented below).
    replicaKmsKeyId String
    Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with sse_kms_encrypted_objects source selection criteria.
    replicationTime Property Map
    Enables S3 Replication Time Control (S3 RTC) (documented below).
    storageClass String
    The storage class used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.

    BucketReplicationConfigurationRuleDestinationAccessControlTranslation, BucketReplicationConfigurationRuleDestinationAccessControlTranslationArgs

    Owner string
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.
    Owner string
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.
    owner String
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.
    owner string
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.
    owner str
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.
    owner String
    Specifies the replica ownership. For default and valid values, see PUT bucket replication in the Amazon S3 API Reference. The only valid value is Destination.

    BucketReplicationConfigurationRuleDestinationMetrics, BucketReplicationConfigurationRuleDestinationMetricsArgs

    Minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    Status string
    Status of replication metrics. Either Enabled or Disabled.
    Minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    Status string
    Status of replication metrics. Either Enabled or Disabled.
    minutes Integer
    Threshold within which objects are to be replicated. The only valid value is 15.
    status String
    Status of replication metrics. Either Enabled or Disabled.
    minutes number
    Threshold within which objects are to be replicated. The only valid value is 15.
    status string
    Status of replication metrics. Either Enabled or Disabled.
    minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    status str
    Status of replication metrics. Either Enabled or Disabled.
    minutes Number
    Threshold within which objects are to be replicated. The only valid value is 15.
    status String
    Status of replication metrics. Either Enabled or Disabled.

    BucketReplicationConfigurationRuleDestinationReplicationTime, BucketReplicationConfigurationRuleDestinationReplicationTimeArgs

    Minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    Status string
    Status of RTC. Either Enabled or Disabled.
    Minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    Status string
    Status of RTC. Either Enabled or Disabled.
    minutes Integer
    Threshold within which objects are to be replicated. The only valid value is 15.
    status String
    Status of RTC. Either Enabled or Disabled.
    minutes number
    Threshold within which objects are to be replicated. The only valid value is 15.
    status string
    Status of RTC. Either Enabled or Disabled.
    minutes int
    Threshold within which objects are to be replicated. The only valid value is 15.
    status str
    Status of RTC. Either Enabled or Disabled.
    minutes Number
    Threshold within which objects are to be replicated. The only valid value is 15.
    status String
    Status of RTC. Either Enabled or Disabled.

    BucketReplicationConfigurationRuleFilter, BucketReplicationConfigurationRuleFilterArgs

    Prefix string
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    Tags Dictionary<string, string>
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.
    Prefix string
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    Tags map[string]string
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.
    prefix String
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    tags Map<String,String>
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.
    prefix string
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    tags {[key: string]: string}
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.
    prefix str
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    tags Mapping[str, str]
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.
    prefix String
    Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
    tags Map<String>
    A map of tags that identifies subset of objects to which the rule applies. The rule applies only to objects having all the tags in its tagset.

    BucketReplicationConfigurationRuleSourceSelectionCriteria, BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs

    SseKmsEncryptedObjects BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.
    SseKmsEncryptedObjects BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.
    sseKmsEncryptedObjects BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.
    sseKmsEncryptedObjects BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.
    sse_kms_encrypted_objects BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.
    sseKmsEncryptedObjects Property Map
    Match SSE-KMS encrypted objects (documented below). If specified, replica_kms_key_id in destination must be specified as well.

    BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects, BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsArgs

    Enabled bool
    Boolean which indicates if this criteria is enabled.
    Enabled bool
    Boolean which indicates if this criteria is enabled.
    enabled Boolean
    Boolean which indicates if this criteria is enabled.
    enabled boolean
    Boolean which indicates if this criteria is enabled.
    enabled bool
    Boolean which indicates if this criteria is enabled.
    enabled Boolean
    Boolean which indicates if this criteria is enabled.

    BucketServerSideEncryptionConfiguration, BucketServerSideEncryptionConfigurationArgs

    Rule BucketServerSideEncryptionConfigurationRule
    Single object for server-side encryption by default configuration. (documented below)
    Rule BucketServerSideEncryptionConfigurationRule
    Single object for server-side encryption by default configuration. (documented below)
    rule BucketServerSideEncryptionConfigurationRule
    Single object for server-side encryption by default configuration. (documented below)
    rule BucketServerSideEncryptionConfigurationRule
    Single object for server-side encryption by default configuration. (documented below)
    rule BucketServerSideEncryptionConfigurationRule
    Single object for server-side encryption by default configuration. (documented below)
    rule Property Map
    Single object for server-side encryption by default configuration. (documented below)

    BucketServerSideEncryptionConfigurationRule, BucketServerSideEncryptionConfigurationRuleArgs

    ApplyServerSideEncryptionByDefault BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault
    Single object for setting server-side encryption by default. (documented below)
    BucketKeyEnabled bool
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
    ApplyServerSideEncryptionByDefault BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault
    Single object for setting server-side encryption by default. (documented below)
    BucketKeyEnabled bool
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
    applyServerSideEncryptionByDefault BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault
    Single object for setting server-side encryption by default. (documented below)
    bucketKeyEnabled Boolean
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
    applyServerSideEncryptionByDefault BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault
    Single object for setting server-side encryption by default. (documented below)
    bucketKeyEnabled boolean
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
    apply_server_side_encryption_by_default BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault
    Single object for setting server-side encryption by default. (documented below)
    bucket_key_enabled bool
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.
    applyServerSideEncryptionByDefault Property Map
    Single object for setting server-side encryption by default. (documented below)
    bucketKeyEnabled Boolean
    Whether or not to use Amazon S3 Bucket Keys for SSE-KMS.

    BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault, BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultArgs

    SseAlgorithm string
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    KmsMasterKeyId string
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.
    SseAlgorithm string
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    KmsMasterKeyId string
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.
    sseAlgorithm String
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    kmsMasterKeyId String
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.
    sseAlgorithm string
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    kmsMasterKeyId string
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.
    sse_algorithm str
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    kms_master_key_id str
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.
    sseAlgorithm String
    Server-side encryption algorithm to use. Valid values are AES256 and aws:kms
    kmsMasterKeyId String
    AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of sse_algorithm as aws:kms. The default aws/s3 AWS KMS master key is used if this element is absent while the sse_algorithm is aws:kms.

    BucketVersioning, BucketVersioningArgs

    Enabled bool
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    MfaDelete bool
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
    Enabled bool
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    MfaDelete bool
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
    enabled Boolean
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    mfaDelete Boolean
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
    enabled boolean
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    mfaDelete boolean
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
    enabled bool
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    mfa_delete bool
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
    enabled Boolean
    Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
    mfaDelete Boolean
    Enable MFA delete for either Change the versioning state of your bucket or Permanently delete an object version. Default is false. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS

    BucketWebsite, BucketWebsiteArgs

    ErrorDocument string
    Absolute path to the document to return in case of a 4XX error.
    IndexDocument string
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    RedirectAllRequestsTo string
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    RoutingRules string | List<string>
    JSON array containing routing rules describing redirect behavior and when redirects are applied.
    ErrorDocument string
    Absolute path to the document to return in case of a 4XX error.
    IndexDocument string
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    RedirectAllRequestsTo string
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    RoutingRules string | []string
    JSON array containing routing rules describing redirect behavior and when redirects are applied.
    errorDocument String
    Absolute path to the document to return in case of a 4XX error.
    indexDocument String
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    redirectAllRequestsTo String
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    routingRules String | List<String>
    JSON array containing routing rules describing redirect behavior and when redirects are applied.
    errorDocument string
    Absolute path to the document to return in case of a 4XX error.
    indexDocument string
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    redirectAllRequestsTo string
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    routingRules string | RoutingRule[]
    JSON array containing routing rules describing redirect behavior and when redirects are applied.
    error_document str
    Absolute path to the document to return in case of a 4XX error.
    index_document str
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    redirect_all_requests_to str
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    routing_rules str | Sequence[str]
    JSON array containing routing rules describing redirect behavior and when redirects are applied.
    errorDocument String
    Absolute path to the document to return in case of a 4XX error.
    indexDocument String
    Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
    redirectAllRequestsTo String
    Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (http:// or https://) to use when redirecting requests. The default is the protocol that is used in the original request.
    routingRules String | List<>
    JSON array containing routing rules describing redirect behavior and when redirects are applied.

    CannedAcl, CannedAclArgs

    Private
    private
    PublicRead
    public-read
    PublicReadWrite
    public-read-write
    AwsExecRead
    aws-exec-read
    AuthenticatedRead
    authenticated-read
    BucketOwnerRead
    bucket-owner-read
    BucketOwnerFullControl
    bucket-owner-full-control
    LogDeliveryWrite
    log-delivery-write
    CannedAclPrivate
    private
    CannedAclPublicRead
    public-read
    CannedAclPublicReadWrite
    public-read-write
    CannedAclAwsExecRead
    aws-exec-read
    CannedAclAuthenticatedRead
    authenticated-read
    CannedAclBucketOwnerRead
    bucket-owner-read
    CannedAclBucketOwnerFullControl
    bucket-owner-full-control
    CannedAclLogDeliveryWrite
    log-delivery-write
    Private
    private
    PublicRead
    public-read
    PublicReadWrite
    public-read-write
    AwsExecRead
    aws-exec-read
    AuthenticatedRead
    authenticated-read
    BucketOwnerRead
    bucket-owner-read
    BucketOwnerFullControl
    bucket-owner-full-control
    LogDeliveryWrite
    log-delivery-write
    Private
    private
    PublicRead
    public-read
    PublicReadWrite
    public-read-write
    AwsExecRead
    aws-exec-read
    AuthenticatedRead
    authenticated-read
    BucketOwnerRead
    bucket-owner-read
    BucketOwnerFullControl
    bucket-owner-full-control
    LogDeliveryWrite
    log-delivery-write
    PRIVATE
    private
    PUBLIC_READ
    public-read
    PUBLIC_READ_WRITE
    public-read-write
    AWS_EXEC_READ
    aws-exec-read
    AUTHENTICATED_READ
    authenticated-read
    BUCKET_OWNER_READ
    bucket-owner-read
    BUCKET_OWNER_FULL_CONTROL
    bucket-owner-full-control
    LOG_DELIVERY_WRITE
    log-delivery-write
    "private"
    private
    "public-read"
    public-read
    "public-read-write"
    public-read-write
    "aws-exec-read"
    aws-exec-read
    "authenticated-read"
    authenticated-read
    "bucket-owner-read"
    bucket-owner-read
    "bucket-owner-full-control"
    bucket-owner-full-control
    "log-delivery-write"
    log-delivery-write

    Import

    Using pulumi import, import S3 bucket using the bucket. For example:

    $ pulumi import aws:s3/bucket:Bucket bucket bucket-name
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.47.0 published on Friday, Jul 26, 2024 by Pulumi