Class: Aws::S3::Types::PutBucketReplicationRequest

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-s3/types.rb

Overview

Note:

When making an API call, you may pass PutBucketReplicationRequest data as a hash:

{
  bucket: "BucketName", # required
  content_md5: "ContentMD5",
  checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
  replication_configuration: { # required
    role: "Role", # required
    rules: [ # required
      {
        id: "ID",
        priority: 1,
        prefix: "Prefix",
        filter: {
          prefix: "Prefix",
          tag: {
            key: "ObjectKey", # required
            value: "Value", # required
          },
          and: {
            prefix: "Prefix",
            tags: [
              {
                key: "ObjectKey", # required
                value: "Value", # required
              },
            ],
          },
        },
        status: "Enabled", # required, accepts Enabled, Disabled
        source_selection_criteria: {
          sse_kms_encrypted_objects: {
            status: "Enabled", # required, accepts Enabled, Disabled
          },
          replica_modifications: {
            status: "Enabled", # required, accepts Enabled, Disabled
          },
        },
        existing_object_replication: {
          status: "Enabled", # required, accepts Enabled, Disabled
        },
        destination: { # required
          bucket: "BucketName", # required
          account: "AccountId",
          storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS, GLACIER_IR
          access_control_translation: {
            owner: "Destination", # required, accepts Destination
          },
          encryption_configuration: {
            replica_kms_key_id: "ReplicaKmsKeyID",
          },
          replication_time: {
            status: "Enabled", # required, accepts Enabled, Disabled
            time: { # required
              minutes: 1,
            },
          },
          metrics: {
            status: "Enabled", # required, accepts Enabled, Disabled
            event_threshold: {
              minutes: 1,
            },
          },
        },
        delete_marker_replication: {
          status: "Enabled", # accepts Enabled, Disabled
        },
      },
    ],
  },
  token: "ObjectLockToken",
  expected_bucket_owner: "AccountId",
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#bucketString

The name of the bucket

Returns:

  • (String)


12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#checksum_algorithmString

Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not provide any additional functionality if not using the SDK. When sending this header, there must be a corresponding ‘x-amz-checksum` or `x-amz-trailer` header sent. Otherwise, Amazon S3 fails the request with the HTTP status code `400 Bad Request`. For more information, see [Checking object integrity] in the *Amazon S3 User Guide*.

If you provide an individual checksum, Amazon S3 ignores any provided ‘ChecksumAlgorithm` parameter.

[1]: docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html

Returns:

  • (String)


12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#content_md5String

The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see [RFC 1864].

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

[1]: www.ietf.org/rfc/rfc1864.txt

Returns:

  • (String)


12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#expected_bucket_ownerString

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code ‘403 Forbidden` (access denied).

Returns:

  • (String)


12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#replication_configurationTypes::ReplicationConfiguration

A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.



12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#tokenString

A token to allow Object Lock to be enabled for an existing bucket.

Returns:

  • (String)


12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
# File 'lib/aws-sdk-s3/types.rb', line 12537

class PutBucketReplicationRequest < Struct.new(
  :bucket,
  :content_md5,
  :checksum_algorithm,
  :replication_configuration,
  :token,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end